实验1
task1_1.py
1 print('hey,u') 2 print('hey', ' u') 3 x,y,z = 1,2,3 4 print(x, y, z) 5 print('x=%d,y=%d,z=%d'%(x,y,z)) 6 print('x={},y={},z={}'.format(x,y,z)) 7 print(f'x={x},y={y},z={z}') 8 print(x) 9 print(y) 10 print(z) 11 print(x,end=' ') 12 print(y,end=' ') 13 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))

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.('x=%d'%x) 2.('{x}'.format(x)) 3.(f'x = {x}')
可以控制结果输出不进行换行 print(x,end=' ')
可以对输出的结果进行格式化操作,可将结果进行向左,向右,居中对齐,并且控制输出的宽度,以及结果的小数点后保留多少位
实验任务2
task2_1.py
1 r1 = eval('1 + 2') 2 print(type(r1), r1) 3 4 r2 = eval('1+2j') 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 1 x, y = eval(input('Enter two oprands: ')) 2 2 ans = x + y 3 3 4 4 print(f'{x} + {y} = {ans}') 5 5 print(f'{type(x)} + {type(y)} = {type(ans)}')

总结:eval()的应用:相当于把输入的圆括号中的内容(一般为字符串)的两侧引号去掉,转换为python表达式,可以用于数字类型的分配,例如:x,y=eval(input()) 输入'1,2' x,y=eval('1,2') x=1,y=2
实验任务3
task3.py
1 ans1 = 0.1 + 0.2 2 print(f'0.1 + 0.2 = {ans1}') 3 4 import decimal 5 6 ans2 = decimal.Decimal('0.1') + decimal.Decimal('0.2') 7 print(f'0.1 + 0.2 = {ans2}')

问题一:计算式是用二进制来进行运算,需将十进制的数转化为二进制再进行计算,它无法准确的表示一些数,它只能用较为准确的数来表示,所以存在误差。
问题二:decimal模块中的工具Decimal()提供十进制浮点数据类型运算支持,并且存储为十进制数序列,它提供一种十进制浮点数的表示方法,可以在计算机中进行十进制的运算;精度:用于存储数字的位数是固定的,不同的数字可以有不同的精度数。
实验任务4
task4.py
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'))

总结:chr()用于返回Unicode码所对应的字符,Unicode码是用16进制编写,故前面有ox
ord()用于返回字符的Unicode的码,chr()和ord()是一组互逆运算,可以相互转换。
实验任务5
task5_1.py
1 import math 2 3 n = float(input('输入一个数:')) 4 5 ans1 = n**0.5 6 ans2 = pow(n, 0.5) 7 ans3 = math.sqrt(n) 8 9 print('%.2f的平方根是: %.2f' %(n, ans1)) 10 print('{:.2f}的平方根是: {:.2f}'.format(n, ans2)) 11 print(f'{n:.2f}的平方根是: {ans3:.2f}')

task5_2.py
1 import math 2 3 text = ''' 4 好奇心是人的天性。 5 理想情况下,学习新东西是让人愉快的事。 6 但学校里的学习似乎有点像苦役。 7 有时候,需要画一个大饼,每次尝试学一些新鲜的,才会每天变得更好一点点。 8 ''' 9 print(text) 10 11 r = float(input('给学习画一个大饼,大饼要做的很大,半径要这么大: ')) 12 13 circle = 2*math.pi*r 14 15 print(f'绕起来,大饼的圆周有这么长, {circle}, 够不够激发你探索未知的动力...')

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

实验任务7
task7.py
1 p, c, K = eval('1.038, 3.7, 0.0054') 2 M, m, Tw = eval('47, 67, 100') 3 Ty = int('70') 4 T0 = float(input('输入一个初始温度值:')) 5 6 import math 7 8 pi = math.pi 9 t1 = (M**(2/3))*c*(p**(1/3)) 10 t2 = (K*(pi**2)*(((4*pi)/3)**(2/3))) 11 t3 = ((T0-Tw)/(Ty-Tw))*0.76 12 t4 = math.log(t3) 13 t = (t1/t2)*t4 14 15 ta = t//60 16 tb = int(t - ta*60 +0.5) 17 18 print(f'T0 = {T0}℃, t = {ta}分{tb}秒')

实验任务8
task8_1.py
1 """ 2 家用电器销售系统 3 v1.0 4 """ 5 6 #欢迎信息 7 print('欢迎使用家用电器销售网络!') 8 9 #产品信息列表 10 print('产品和价格信息如下:') 11 print('*'*60) 12 print('%-10s'%'编号', '%-10s'%'名称', '%-10s'%'品牌', '%-10s'%'价格', '%-10s'%'库存数量') 13 print('-'*60) 14 print('%-10s'%'0001', '%-10s'%'电视机', '%-10s'%'海尔', '%10.2f'%5999.00, '%10d'%20) 15 print('%-10s'%'0002', '%-10s'%'冰箱', '%-10s'%'西门子', '%10.2f'%6998.00, '%10d'%15) 16 print('%-10s'%'0003', '%-10s'%'洗衣机', '%-10s'%'小天鹅', '%10.2f'%1999.00, '%10d'%10) 17 print('%-10s'%'0004', '%-10s'%'空调', '%-10s'%'格力', '%10.2f'%3900.00, '%10d'%0) 18 print('%-10s'%'0005', '%-10s'%'热水器', '%-10s'%'美的', '%10.2f'%688.00, '%10d'%30) 19 print('%-10s'%'0006', '%-10s'%'笔记本', '%-10s'%'联想', '%10.2f'%5699.00, '%10d'%10) 20 print('%-10s'%'0007', '%-10s'%'微波炉', '%-10s'%'苏泊尔', '%10.2f'%480.50, '%10d'%33) 21 print('%-10s'%'0008', '%-10s'%'投影仪', '%-10s'%'松下', '%10.2f'%1250.00, '%10d'%12) 22 print('%-10s'%'0009', '%-10s'%'吸尘器', '%-10s'%'飞利浦', '%10.2f'%999.00, '%10d'%9) 23 print('-'*60) 24 25 #用户输入信息 26 product_id = input('请输入你购买产品的序号:') 27 price = float(input('请输入你要购买的产品价格:')) 28 count = int(input('请输入你要购买的产品数量')) 29 30 #计算金额 31 print('购买成功,你需要支付',price*count,'元') 32 33 #退出系统 34 print('谢谢你的光临,下次再见!')

task8_2.py
1 """ 2 家用电器销售系统 3 v1.0 4 """ 5 6 #欢迎信息 7 print('欢迎使用家用电器销售网络!') 8 9 #产品信息列表 10 print('产品和价格信息如下:') 11 print('*'*60) 12 print('%-10s'%'编号', '%-10s'%'名称', '%-10s'%'品牌', '%-10s'%'价格', '%-10s'%'库存数量') 13 print('-'*60) 14 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0001','电视机','海尔','5999.00','20')) 15 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0002','冰箱','西门子','6998.00','15')) 16 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0003','洗衣机','小天鹅','1999.00','10')) 17 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0004','空调','格力','3900.00','0')) 18 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0005','热水器','美的','688.00','30')) 19 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0006','笔记本','联想','5699.00','10')) 20 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0007','微波炉','苏泊尔','480.00','33')) 21 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0008','投影仪','松下','1250.00','12')) 22 print('{:<10}{:<10}{:<10}{:<10}{:>10}'.format('0009','吸尘器','飞利浦','999.00','9')) 23 print('-'*60) 24 25 #用户输入信息 26 product_id = input('请输入你购买产品的序号:') 27 price = float(input('请输入你要购买的产品价格:')) 28 count = int(input('请输入你要购买的产品数量')) 29 30 #计算金额 31 print('购买成功,你需要支付',price*count,'元') 32 33 #退出系统 34 print('谢谢你的光临,下次再见!')

task8_3.py
1 """ 2 家用电器销售系统 3 v1.0 4 """ 5 6 #欢迎信息 7 print('欢迎使用家用电器销售网络!') 8 9 #产品信息列表 10 print('产品和价格信息如下:') 11 print('*'*60) 12 print('%-10s'%'编号', '%-10s'%'名称', '%-10s'%'品牌', '%-10s'%'价格', '%-10s'%'库存数量') 13 print('-'*60) 14 a1,a2,a3,a4,a5 = '0001','电视机','海尔','5999.00','20' 15 b1,b2,b3,b4,b5 = '0002','冰箱','西门子','6998.00','15' 16 c1,c2,c3,c4,c5 = '0003','洗衣机','小天鹅','1999.00','10' 17 d1,d2,d3,d4,d5 = '0004','空调','格力','3900.00','0' 18 e1,e2,e3,e4,e5 = '0005','热水器','美的','688.00','30' 19 f1,f2,f3,f4,f5 = '0006','笔记本','联想','5699.00','10' 20 g1,g2,g3,g4,g5 = '0007','微波炉','苏泊尔','480.00','33' 21 h1,h2,h3,h4,h5 = '0008','投影仪','松下','1250.00','12' 22 i1,i2,i3,i4,i5 = '0009','吸尘器','飞利浦','999.00','9' 23 print(f'{a1:<10}{a2:<10}{a3:<10}{a4:<10}{a5:>10}') 24 print(f'{b1:<10}{b2:<10}{b3:<10}{b4:<10}{b5:>10}') 25 print(f'{c1:<10}{c2:<10}{c3:<10}{c4:<10}{c5:>10}') 26 print(f'{d1:<10}{d2:<10}{d3:<10}{d4:<10}{d5:>10}') 27 print(f'{e1:<10}{e2:<10}{e3:<10}{e4:<10}{e5:>10}') 28 print(f'{f1:<10}{f2:<10}{f3:<10}{f4:<10}{f5:>10}') 29 print(f'{g1:<10}{g2:<10}{g3:<10}{g4:<10}{g5:>10}') 30 print(f'{h1:<10}{h2:<10}{h3:<10}{h4:<10}{h5:>10}') 31 print(f'{i1:<10}{i2:<10}{i3:<10}{i4:<10}{i5:>10}') 32 print('-'*60) 33 34 #用户输入信息 35 product_id = input('请输入你购买产品的序号:') 36 price = float(input('请输入你要购买的产品价格:')) 37 count = int(input('请输入你要购买的产品数量')) 38 39 #计算金额 40 print('购买成功,你需要支付',price*count,'元') 41 42 #退出系统 43 print('谢谢你的光临,下次再见!')


浙公网安备 33010602011771号