🪐1. 初识Python
Python是一种高级、通用、解释型的编程语言,具有简洁而清晰的语法,被广泛应用于软件开发、数据科学、人工智能等领域。以下是Python技术的一些主要特点和应用领域:
- 易学易用: Python的语法设计简单,容易学习和理解。这使得它成为初学者和专业开发人员的首选语言之一。
- 开源: Python是开源的,任何人都可以查看、修改和分发其源代码。这为开发者提供了自由和灵活性。
- 跨平台: Python可在多个操作系统上运行,包括Windows、Linux和macOS,使其成为跨平台开发的理想选择。
- 强大的社区支持: Python拥有庞大的全球开发者社区,用户可以获得丰富的文档、库和工具,方便解决各类问题。
- 广泛应用领域: Python在多个领域都有应用,包括Web开发、数据科学、机器学习、人工智能、自动化测试、网络编程等。
- 丰富的第三方库: Python拥有丰富的第三方库和框架,如NumPy、Pandas、Django、Flask等,提供了强大的工具来简化开发流程。
- 动态类型: Python是一种动态类型语言,允许开发者更加灵活地进行变量和对象的操作。
- 面向对象编程: Python支持面向对象编程,使得代码结构更加模块化、可维护性更强。
总体而言,Python是一门功能强大、灵活易用的编程语言,适用于各种规模和类型的项目,从小型脚本到大型应用,都能够得心应手。
🪐2. 实验报告一
🌍实验目的
- 掌握 jupyter notebook 编程工具的基本用法。
- 理解并熟悉函数声明、定义及调用。
🌍实验要求
- 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?这四个数字是2、3、7、9呢?
- 判断1000-2000之间有多少个素数,并输出所有素数。
- 打印出所有的"四叶玫瑰数",所谓"四叶玫瑰数"是指一个四位数,其各位数字四次方和等于该数本身。
- 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符输出的数并分别统计每一种类型的个数。
- 打印九九乘法表。
🌍实验代码
1. 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?这四个数字是2、3、7、9呢?
A=[1,2,3,4] #A=[2,3,7,9] def Anumber(a): print(a[0]*100+a[1]*10+a[2],end=" ") print(a[0]*100+a[2]*10+a[1],end=" ") print(a[1]*100+a[2]*10+a[0],end=" ") print(a[1]*100+a[0]*10+a[2],end=" ") print(a[2]*100+a[0]*10+a[1],end=" ") print(a[2]*100+a[1]*10+a[0],end=" ") a=[A[0],A[1],A[2]] b=[A[0],A[1],A[3]] c=[A[1],A[2],A[3]] d=[A[0],A[2],A[3]] aa=[a,b,c,d] count=0 for i in aa: count+=6 Anumber(i) print("\n共有%d个互不相同的数据"%count)
2. 判断1000-2000之间有多少个素数,并输出所有素数。
sum=0 for i in range(1000,2001,1): count=0 for j in range(2,i,1): if (i%j==0 and count==0): count+=1 elif (count!=0):break else:count=count if count==0: print(i,end=" ") sum+=1 print("\n\n1000至2000之间有%d个素数"%sum)
3. 打印出所有的"四叶玫瑰数",所谓"四叶玫瑰数"是指一个四位数,其各位数字四次方和等于该数本身。
for i in range(1000,10000,1): a=i//1000 b=(i-a*1000)//100 c=i%100//10 d=i%10 if i==a**4+b**4+c**4+d**d: print(i,end=" ")
4. 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符输出的数并分别统计每一种类型的个数。
Str=input("请输入一行字符:") countword=0 #英文字母 word=[] countnull=0 #空格 null=[] countnum=0 #数字 num=[] countother=0 #其它字符 other=[] for i in Str: if "a"<=i<="z" or "A"<=i<="Z": countword+=1 word.append(i) elif "0"<=i<="9": countnum+=1 num.append(i) elif i=="\x20": #\x20是空格的转义字符 countnull+=1 null.append(i) else: countother+=1 other.append(i) print("统计该行字符其中:\n英文字母有%d个\n空格有%d个\n数字有%d个\n其它字符有%d个\n"%(countword,countnull,countnum,countother)) print("英文单词有:",word,"\n空格有:",null,"\n数字有:",num,"\n其他字符有:",other)
5. 打印九九乘法表。
for i in range(1,10,1): for j in range(1,i+1,1): if(i==j): print("%d×%d=%2d"%(i,j,i*j)) else:print("%d×%d=%2d"%(i,j,i*j),end=" ")
🌍实验结果
1. 数字1、2、3、4组成:
数字2、3、7、9组成:
2. 输出1000-2000之内全部素数
3. 输出所有的四叶玫瑰数
4. 统计各字符数
5. 打印九九乘法表
🌍实验体会
- 问题一解决思路:使用列表存储给定的四个互不相同的数字,通过排列组合生成所有可能的三位数组合,采用函数进行分组讨论,优化了问题求解的效率。
- 问题二解决思路:使用常规的素数判断方法,通过两层循环判定每个数字是否为素数,实现了1000-2000范围内素数的输出。
- 问题三解决思路:直接将四位数拆分,通过if判断解决问题,采用简单直观的方法完成任务。
- 问题四解决思路:通过迭代循环遍历一行字符,使用计数器和列表存储器对英文字母、空格、数字和其他字符进行分类统计,注意处理字符类型的输入。
- 问题五解决思路:使用两个嵌套迭代循环输出九九乘法表,通过格式化输出保证结果对齐美观,提升可读性。
📝总结
Python领域就像一片未被勘探的信息大海,引领你勇敢踏入Python数据科学的神秘领域。这是一场独特的学习冒险,从基本概念到算法实现,逐步揭示更深层次的模式分析、匹配算法和智能模式识别的奥秘。