实验1 Python开发环境使用和编程初体验
task1_1.py
1 print('hey,u') 2 3 print('hey', 'u') 4 x, y, z = 1, 2, 3 5 print(x, y, z) 6 7 print('x=%d, y=%d, z=%d' %(x,y,z)) 8 print('x={},y={},z={}'.format(x,y,z)) 9 print(f'x={x},y={y},z={z}') 10 11 print(x) 12 print(y) 13 print(z) 14 15 print(x,end=" ") 16 print(y,end=" ") 17 print(z)
运行结果截图
task1_2.py
1 x1,y1=1.2,3.57 2 x2,y2=2.26,8.7 3 4 print("{:-^40}".format("输出1")) 5 print("x1={},y1={}".format(x1,y1)) 6 print("x2={},y2={}".format(x2,y2)) 7 8 print("{:-^40}".format("输出2")) 9 print("x1={:.1f},y1={:.1f}".format(x1,y1)) 10 print("x2={:.1f},y2={:.1f}".format(x2,y2)) 11 12 print("{:-^40}".format("输出3")) 13 print("x1={:<15.1f},y1={:<15.1f}".format(x1,y1)) 14 print("x2={:<15.1f},y2={:<15.1f}".format(x2,y2)) 15 16 print("{:-^40}".format("输出4")) 17 print("x1={:>15.1f},y1={:>15.1f}".format(x1,y1)) 18 print("x2={:>15.1f},y2={:>15.1f}".format(x2,y2))
运行结果截图
task1_3.py
1 name1,age1="Bill",19 2 name2,age2="Hellen",18 3 title="Personnel Information" 4 5 print(f"{title:=^40}") 6 print(f"name:{name1:10},age:{age1:3}") 7 print(f"name:{name2:10},age:{age2:3}") 8 print(40*"=")
运行结果截图
print可以用于输出数字,字符串,格式化输出等等
task2_1.py
1 r1=eval("1+2") 2 print(type(r1),r1) 3 4 r2=eval("[1,6,7.5]") 5 print(type(r2),r2) 6 7 r3=eval('"python"') 8 print(type(r3),r3) 9 10 r4=eval("7,42") 11 print(type(r4),r4)
运行结果截图
task2_2.py
1 x,y=eval(input("enter two oprands:")) 2 ans=x+y 3 4 print(f"{x}+{y}={ans}") 5 print(f"{type(x)}+{type(y)}={type(ans)}")
运行结果截图
eval函数可以自动识别输入数据的类型
task3.py
1 ans1=0.1+0.2 2 print(f"0.1+0.2={ans1}") 3 4 from decimal import Decimal 5 6 ans2=Decimal("0.1")+Decimal("0.2") 7 print(f"0.1+0.2={ans2}")
运行结果截图
line4的算法是先把十进制的数字转化为二进制进行计算,然后再把计算结果转化为十进制输出,必然会产生误差
task4.py
1 print(chr(0x1f603),end=" ") 2 print(chr(0x1f604)) 3 4 print(chr(10000),end=" ") 5 print(chr(0x025b),end=" ") 6 print(chr(0x2708),end=" ") 7 print(chr(0x00A5),end=" ") 8 print(chr(0x266b)) 9 10 print(ord("a"),end=" ") 11 print(ord("b"),end=" ") 12 print(ord("c")) 13 14 print(ord("A"),end=" ") 15 print(ord("B"),end=" ") 16 print(ord("C")) 17 18 print(ord("0"),end=" ") 19 print(ord("1"),end=" ") 20 print(ord("2"))
运行结果截图
ord()函数主要用来返回对应字符的ascii码;chr()主要用来表示ascii码对应的字符,可以用十进制,也可以用十六进制。
task5_1.py
1 from math import sqrt 2 3 n=float(input("输入一个数:")) 4 5 ans1=sqrt(n) 6 ans2=n**0.5 7 8 print("%.2f的平方根是:%.2f"%(n,ans1)) 9 print("{:.2f}的平方根是:{:.2f}".format(n,ans2)) 10 print(f"{n:.2f}的平方根是:{ans2:.2f}")
运行结果截图
task5_2.py
1 from math import pi 2 3 text=""" 4 好奇心是人的天性。 5 理想情况下,学习新东西是让人愉快的事。 6 但学校里的学习似乎有点像苦役。 7 有时候,需要画一个大饼,每次尝试学一些新鲜的,才会每天变得更好一点点。 8 """ 9 print(text) 10 11 r=float(input("给学习画一个大饼,大饼要做的很大,半径要这么大:")) 12 13 circle=2*pi*r 14 15 16 print(f"绕起来,大饼的圆周有这么大,{circle},够不够激发你探索未知的动力")
运行结果截图
task6.py
1 x=float(input("请输入一个数:")) 2 y=x**365 3 print("{:.2f}的365次方:{:.4f}".format(x,y))
运行结果截图
task7.py
1 from math import log 2 from math import pi 3 rou=1.038 4 c=3.7 5 k=0.0054 6 M=67 7 m=47 8 t0=float(input("放入水中之前蛋的原始温度:")) 9 tw=100.0 10 ty=70.0 11 flag=0.76*(t0-tw)/(ty-tw) 12 fenzi=M**(2/3)*c*(rou**(1/3)) 13 fenmu=k*(pi**2)*((4*pi/3)**(2/3)) 14 t=(fenzi/fenmu)*log(flag) 15 fenzhong=int(t/60) 16 miaoshu=t-60*(fenzhong) 17 t0=int(t0) 18 print("T0={}°C,t={}分{:.2f}秒".format(t0,fenzhong,miaoshu))
运行结果截图
本次实验的收获:python总体来说比c语言简单好多