print('hey, u') print('hey', ' u') x,y,z = 1,2,3 print(x, y, z) print('x = %d, y = %d, z = %d' %(x,y,z)) print('x = {}, y = {}, z = {}'.format(x,y,z)) print(f'x = {x}, y = {y}, z = {z}') print(x) print(y) print(z) print(x, end=' ') print(y, end=' ') print(z)
x1, y1 = 1.2, 3.57 x2, y2 = 2.26, 8.7 print('{:-^40}'.format('输出1')) print('x1 = {}, y1 = {}'.format(x1, y1)) print('x2 = {}, y2 = {}'.format(x2, y2)) print('{:-^40}'.format('输出2')) # {:-^40} print('x1 = {:.1f}, y1 = {:.1f}'.format(x1, y1)) print('x2 = {:.1f}, y2 = {:.1f}'.format(x2, y2)) print('{:-^40}'.format('输出3')) # {:-^40} print('x1 = {:<15.1f}, y1 = {:<15.1f}'.format(x1, y1)) print('x2 = {:<15.1f}, y2 = {:<15.1f}'.format(x2, y2)) print('{:-^40}'.format('输出3')) print('x1 = {:>15.1f}, y1 = {:>15.1f}'.format(x1, y1)) print('x2 = {:>15.1f}, y2 = {:>15.1f}'.format(x2, y2))
name1, age1 = 'Bill', 19 name2, age2 = 'Hellen', 18 title = 'Personnel Information' print(f'{title:=^40}') print(f'name: {name1:10}, age: {age1:3}') print(f'name: {name2:10}, age: {age2:3}') print(40*'=')
用法1:用于输出单个字符串或单个变量
用法2: 用于输出多个数据项,用逗号分隔
用法3: 用户混合字符串和变量值
方式1: 传统c风格 print('x = %d, y = %d, z = %d' %(x,y,z))
方式2: s.format()方法 print('x = {}, y = {}, z = {}'.format(x,y,z))
方式3: f-string方式 print(f'x = {x}, y = {y}, z = {z}')
其它: 默认输出后换一行,输出结束后,不换行;通过end指定数据项之间的分隔符
实验2
r1 = eval('1 + 2') # 相当于r1 = 1 + 2 print(type(r1), r1) r2 = eval('[1, 6, 7.5]') #相当于r2 = [1, 6, 7.5] print(type(r2), r2) r3 = eval('"python"') # 相当于r3 = "python" print(type(r3), r3) r4 = eval('7, 42') # 相当于r4 = 7, 43 print(type(r4), r4)
for _ in range(3):
x, y = eval(input('Enter two oprands: '))
ans = x + y
print(f'{x} + {y} = {ans}')
print(f'{type(x)} + {type(y)} = {type(ans)}')
功能:把字符串转换为python表达式 理解:相当于把圆括号中的内容,两侧引号去掉
实验3
# 浮点数简单运算 ans1 = 0.1 + 0.2 print(f'0.1 + 0.2 = {ans1}') from decimal import Decimal ans2 = Decimal('0.1') + Decimal('0.2') print(f'0.1 + 0.2 = {ans2}')
运行程序,比较line3和line6的打印输出结果,分析:
1.为什么line3输出结果显示存在误差?
计算机数据存储类型使用二进制,存储浮点数类型时会有一定误差,小数位数可能会出现不确定的情况。
2.decimal模块中的工具Decimal()是如何进行浮点运算的?
decimal模块的设计以三个概念为中心:decimal 数值,算术上下文和信号。
decimal 数值是不可变对象。 它由符号,系数和指数位组成。 为了保持有效位,系数位不会截去末尾零。
算术的上下文是指定精度、舍入规则、指数限制、指示操作结果的标志以及确定符号是否被视为异常的陷阱启用器的环境。
信号是在计算过程中出现的异常条件组。 根据应用程序的需要,信号可能会被忽略,被视为信息,或被视为异常。
实验4
# 字符编码相关 # chr()返回unicode编码对应的字符 print(chr(0x1f600), end = " ") print(chr(0x1f601), end = " ") print(chr(0x1f602), end = " ") print(chr(0x1f603), end = " ") print(chr(0x1f604)) print(chr(10000), end=" ") print(chr(0x025b), end=" ") print(chr(0x2708), end=" ") print(chr(0x00A5), end=" ") print(chr(0x266b)) # ord()返回字符的unicode编码 print(ord('a'), end = " ") print(ord('b'), end = " ") print(ord('c')) print(ord('A'), end = " ") print(ord('B'), end = " ") print(ord('C')) print(ord('0'), end = " ") print(ord('1'), end = " ") print(ord('2'))
chr()返回unicode编码对应的字符; ord()返回字符的unicode编码
实验5
# 简单的数学计算 from math import sqrt n = float(input('输入一个数:'))# python中计算开平方的两种方式 ans1 = sqrt(n) ans2 = n**0.5 print('%.2f的平方根是: %.2f' %(n, ans1)) # 以传统c风格方式输出 print('{:.2f}的平方根是: {:.2f}'.format(n, ans2)) # 使用字符串format()方法输出 print(f'{n:.2f}的平方根是: {ans2:.2f}') # 使用f-string方式输出
# 神奇的pi, 与大饼 from math import pi text = ''' 好奇心是人的天性。 理想情况下,学习新东西是让人愉快的事。 但学校里的学习似乎有点像苦役。 有时候,需要画一个大饼,每次尝试学一些新鲜的,才会每天变得更好一点点。 ''' print(text) r = float(input('给学习画一个大饼,大饼要做的很大,半径要这么大: ')) circle = 2*pi*r print(f'绕起来,大饼的圆周有这么长, {circle}, 够不够激发你探索未知的动力...')
实验6
for _ in range(3): x = eval(input('输入:')) print(x, '的365次方:', x ** 365)
实验7
# 煮鸡蛋时,一旦超过临界温度,鸡蛋里面的蛋白质就会变性凝结,凝结随着温度升高而加快。蛋清中蛋白质凝结的临界温度时63°,而蛋黄中蛋白质凝结的临界温度是70°。 # 如果要煮溏心蛋,水温应当保持在63°~70°,加热足够长就会使蛋清凝固; # 如果要煮硬心蛋,蛋黄中心的温度应该达到70°以上并保持一段时间。 # 以下公式表示蛋黄中心达到温度Ty(摄氏度)所需的时间t:参数M, ρ, c, K是蛋的性质:M是质量,ρ是密度,c是比热容,K是热导率。 # ρ = 1.038g/cm2 c = 3.7J/(g.K) K = 5.4×10-3W/(cm.K) 小鸡蛋M = 47g, 大鸡蛋M = 67g # Tw是水沸腾的温度(以℃计)T0是放入水中之前蛋的原始温度(以℃计)依据上述公式,计算煮鸡蛋的时间。 # 设Tw = 100℃,Ty= 70℃,分别计算:从冰箱(T0 = 4℃)取得的大鸡蛋,计算时间;从室温(T0 = 20℃)取得的大鸡蛋,计算时间,T0 = xx℃, t = xx分xx秒 import math math.log(10) ρ = 1.038 c = 3.7 K = 5.4*10**(-3) Tw = 100 Ty = 70 M = 47 T0 = 4 t = M**(2/3)*c*ρ**(1/3)/(K*(math.pi**2)*(4*math.pi/3)**(2/3))*math.log(0.76*(T0-Tw)/(Ty-Tw)) print('T0 = 4℃, t =', int(t), '分', int(t%60), '秒') M = 67 T0 = 20 print('T0 = 20℃, t =', int(t), '分', int(t%60), '秒')
本次实验总结:
1.本次实验主要考察一些基本python用语,需要多运用才能熟练,本章基础知识也为后面学习更多语法知识打下基础。
2.学习此门语言需严谨细心,注重逻辑和框架,还应该坚持和耐心。