实验1
实验任务1
task1_1
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
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
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*'=')

总结1:(1)只需要一个参数就可以输出任意类型的一个对象,可以有多个参数,这些参数首先全部转化为字符串,然后使用空格拼接起来,变成一个完整的字符串输出。
(2)可以对输出对象格式化。
(3)默认情况下会自动换行,也可以在结尾使用end参数改变它的行为。
实验任务2
task2_1
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
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)}')



总结2:eval()函数可以根据输入数据的类型自动转换对应的数据形式,如果是字符串类型须添加单引号或双引号。
实验任务3
task3
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}')

答:(1)0.1和0.2在二进制浮点中没有精确的表达。
(2)Decimal()是将数字舍到十进制下的位数然后再进行运算
实验任务4
task4
1 print(chr(0x1f600),end="") 2 print(chr(0x1f601),end="") 3 print(chr(0x1f602),end="") 4 print(chr(0x1f603),end="") 5 print(chr(0x1f604)) 6 7 print(chr(10000),end="") 8 print(chr(0x025b),end="") 9 print(chr(0x2708),end="") 10 print(chr(0x00A5),end="") 11 print(chr(0x266b)) 12 13 print(ord('a'),end="") 14 print(ord('b'),end="") 15 print(ord('c')) 16 17 print(ord('A'),end="") 18 print(ord('B'),end="") 19 print(ord('C')) 20 21 print(ord('0'),end="") 22 print(ord('1'),end="") 23 print(ord('2'))

总结4:(1)chr()转换成整数对应的ASCⅡ字符
(2)ord()转换成ASCⅡ字符对应的整数
实验任务5
task5_1
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
from math import pi text=''' 好奇心是人的天性。 理想情况下,学习新东西是让人愉快的事。 但学校里的学习似乎有点像苦役。 有时候,需要画一个大饼,每次尝试学一些新鲜的,才会每天变得更好一点点。 ''' print(text) r=float(input('给学习画一个大饼,大饼要做的很大,半径要这么大')) circle=2*pi*r print(f'绕起来,大饼的圆周有这么长,{circle},够不够激发你探索未知的动力……')

实验任务6
task6
1 x=eval(input('输入一个数:')) 2 y=x**365 3 print('{}的365次方:{}'.format(x,y))



实验任务7
task7
1 T0=eval(input('输入放入水中之前蛋的原始温度(以℃计):')) 2 Tw=100 3 Ty=70 4 M=67 5 ρ=1.038 6 c=3.7 7 K=5.4*(10**(-3)) 8 from math import pi 9 from math import log 10 from math import e 11 t=(M**(2/3)*c*ρ**(1/3))/(K*pi**2*(4*pi/3)**(2/3))*log(((T0-Tw)/(Ty-Tw))*0.76,e) 12 print('T0={}℃,t={}分{}秒'.format(T0,t//60,t%60))


实验总结:
(1)熟悉了用函数print(),input(),float(),eval()进心输入、输出以及类型转换
(2)能正确应用python常用运算符、表达式和计算规则进行计算
(3)学习了math库中函数的调用,比如math.pi,math.log(x),Decimal库中Decimal()的调用。
(4)对输出内容的宽度以及精度也进行了熟悉。
(5)在python学习中还存在许多问题,诸如使用不熟练,可能过程过于繁琐,有待在日后的学习中提高。
浙公网安备 33010602011771号