实验1 Python开发环境使用和编程初体验

实验任务1

test.1 python输出的几种用法

 1 # print输出的几种用法
 2 # 用法1:用于输出单个字符串或单个变量
 3 print('hey, u')
 4 # 用法2: 用于输出多个数据项,用逗号分隔
 5 print('hey', ' u')
 6 x,y,z = 1,2,3
 7 print(x, y, z)
 8 # 用法3: 用户混合字符串和变量值
 9 print('x = %d, y = %d, z = %d' %(x,y,z)) # 方式1: 传统c风格
10 print('x = {}, y = {}, z = {}'.format(x,y,z)) # 方式2: s.format()方法
11 print(f'x = {x}, y = {y}, z = {z}') # 方式3: f-string方式
12 # 其它: 输出后是否换行
13 print(x) # 默认输出后换一行
14 print(y)
15 print(z)
16 print(x, end=' ') # 输出结束后,不换行;通过end指定数据项之间的分隔符
17 print(y, end=' ')
18 print(z)

运行结果

 

 test.2 使用字符串的format()方法,对输出数据项进行格式化

 1 # 使用字符串的format()方法,对输出数据项进行格式化
 2 x1, y1 = 1.2, 3.57
 3 x2, y2 = 2.26, 8.7
 4 # 输出1
 5 # {:-^40}控制输出数据格式: 宽度占40列,居中对齐,空白处用-补齐
 6 print('{:-^40}'.format('输出1'))
 7 print('x1 = {}, y1 = {}'.format(x1, y1))
 8 print('x2 = {}, y2 = {}'.format(x2, y2))
 9 # 输出2
10 print('{:-^40}'.format('输出2')) 
11 # {:.1f}控制小数输出精度,保留1位小数
12 print('x1 = {:.1f}, y1 = {:.1f}'.format(x1, y1))
13 print('x2 = {:.1f}, y2 = {:.1f}'.format(x2, y2))
14 # 输出3
15 print('{:-^40}'.format('输出3')) 
16 # {:<15.1f}控制数据输出宽度占15列,小数部分占1列,左对齐,空白处默认补空格
17 print('x1 = {:<15.1f}, y1 = {:<15.1f}'.format(x1, y1))
18 print('x2 = {:<15.1f}, y2 = {:<15.1f}'.format(x2, y2))
19 # 输出4
20 print('{:-^40}'.format('输出4'))
21 # {:>15.1f}控制数据输出宽度占15列,小数部分占1列,右对齐,空白处默认补空格
22 print('x1 = {:>15.1f}, y1 = {:>15.1f}'.format(x1, y1))
23 print('x2 = {:>15.1f}, y2 = {:>15.1f}'.format(x2, y2))

运行结果

 

 test.3 使用f-string方式输出数据并控制格式

 1 # 使用f-string方式输出数据并控制格式
 2 name1, age1 = 'Bill', 19
 3 name2, age2 = 'Hellen', 18
 4 title = 'Personnel Information'
 5 # 输出title的值,=^40指定输出宽度占40列,居中对齐,用=填充空白
 6 print(f'{title:=^40}') 
 7 # 10和3分别指定数据项输出宽度
 8 print(f'name: {name1:10} age: {age1:3}') 
 9 print(f'name: {name2:10} age: {age2:3}')
10 print(40*'=')

运行结果

 

 实验任务2

test.1

 1 # 内置函数eval()
 2 # 功能:把字符串转换为python表达式
 3 # 理解:相当于把圆括号中的内容,两侧引号去掉
 4 r1 = eval('1 + 2') # 相当于r1 = 1 + 2
 5 print(type(r1), r1)
 6 r2 = eval('1+2j') #相当于r2 = 1+2j
 7 print(type(r2), r2)
 8 r3 = eval('"python"') # 相当于r3 = "python"
 9 print(type(r3), r3)
10 r4 = eval('7, 42') # 相当于r4 = 7, 42
11 print(type(r4), r4)

运行结果

 

 test.2

1 # 组合使用内置函数eval()和input()
2 # 输入的两个操作数之间用逗号分隔(英文半角输入法下的逗号)
3 x, y = eval(input('Enter two oprands: ')) 
4 ans = x + y
5 print(f'{x} + {y} = {ans}')
6 print(f'{type(x)} + {type(y)} = {type(ans)}')

运行结果1

 

 运行结果2

 

 运行结果3

 

 实验任务3

1 # 浮点数简单运算
2 ans1 = 0.1 + 0.2
3 print(f'0.1 + 0.2 = {ans1}')
4 import decimal
5 ans2 = decimal.Decimal('0.1') + decimal.Decimal('0.2')
6 print(f'0.1 + 0.2 = {ans2}')

运行结果

 

 分析:

line3结果存在误差原因:由于浮点数存在精度限制,在Python中使用浮点数做运算时就可能会产生不确定尾数。

实验任务4

 1 # chr()返回unicode编码对应的字符
 2 print(chr(0x1f600), end = " ")
 3 print(chr(0x1f601), end = " ")
 4 print(chr(0x1f602), end = " ")
 5 print(chr(0x1f603), end = " ")
 6 print(chr(0x1f604))
 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 # ord()返回字符的unicode编码
13 print(ord('a'), end = " ")
14 print(ord('b'), end = " ")
15 print(ord('c'))
16 print(ord('A'), end = " ")
17 print(ord('B'), end = " ")
18 print(ord('C'))
19 print(ord('0'), end = " ")
20 print(ord('1'), end = " ")
21 print(ord('2'))

运行结果

 

 实验任务5

test.1 简单的数学计算

 1 # 简单的数学计算
 2 import math
 3 n = float(input('输入一个数:'))
 4 # python中计算开平方的三种方式
 5 ans1 = n**0.5
 6 ans2 = pow(n, 0.5)
 7 ans3 = math.sqrt(n)
 8 print('%.2f的平方根是: %.2f' %(n, ans1)) # 以传统风方式(%)输出
 9 print('{:.2f}的平方根是: {:.2f}'.format(n, ans2)) # 使用str.format()方式输出
10 print(f'{n:.2f}的平方根是: {ans3:.2f}') # 使用f-string方式输出

运行结果

 

 test.2

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

运行结果

 

 实验任务6

1 x=eval(input('请输入一个数x:'))
2 y=x**365
3 print(f'{x}的365次方:{y}')

运行结果1

 

 运行结果2

 

 运行结果3

 

 实验任务7

 1 import math
 2 T0=eval(input('请输入T0:'))
 3 ρ=1.038
 4 c=3.7
 5 K=5.4e-3
 6 M=47
 7 Tw=100
 8 Ty=70
 9 l=M**(2/3)*c*ρ**(1/3)
10 n=K*(math.pi)**2*(4*math.pi/3)**(2/3)
11 o=math.log(0.76*(T0-Tw)/(Ty-Tw))
12 t=l/n*o
13 tmin=t//60
14 ts=t%60
15 print(f'T0={T0}℃,t={tmin}分{ts}秒')

运行结果1

 

 运行结果2

 实验任务8

test1

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

运行结果

 

 

 test2

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

运行结果

 

 

 test3

 1 #欢迎信息
 2 print('产品信息如下:')
 3 print('*'*57)
 4 a='编号'
 5 b='名称'
 6 c='品牌'
 7 d='价格'
 8 e='库存数量'
 9 print(f'{a:10}{b:10}{c:10}{d:10}{e:10}')
10 print('-'*60)
11 a='0001'
12 b='电视机'
13 c='海尔'
14 d=5999.00
15 e=20
16 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
17 a='0002'
18 b='冰箱'
19 c='西门子'
20 d=6998.00
21 e=15
22 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
23 a='0003'
24 b='洗衣机'
25 c='小天鹅'
26 d=1999.00
27 e=10
28 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
29 a='0004'
30 b='空调'
31 c='格力'
32 d=3900.00
33 e=0
34 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
35 a='0005'
36 b='热水器'
37 c='美的'
38 d=688.00
39 e=30
40 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
41 a='0006'
42 b='笔记本'
43 c='联想'
44 d=5699.00
45 e=10
46 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
47 a='0007'
48 b='微波炉'
49 c='苏泊尔'
50 d=480.00
51 e=33
52 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
53 a='0008'
54 b='投影仪'
55 c='松下'
56 d=1250.00
57 e=12
58 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
59 a='0009'
60 b='吸尘器'
61 c='飞利浦'
62 d=999.00
63 e=9
64 print(f'{a:10}{b:10}{c:10}{d:10.2f}{e:10}')
65 print('-'*60)
66 #输入用户信息
67 product_id=input('请输入您要购买的产品编号:')
68 price=float(input('请输入您要购买的产品价格:'))
69 count=int(input('请输入宁要购买的产品数量:'))
70 #计算金额
71 print('购买成功,您需要支付',price*count,'')
72 #退出系统
73 print('谢谢您的光临,下次再见!')

运行结果

 

 实验总结

实验任务8在使用f-string输出格式控制时需要先定义变量

 

posted @ 2023-03-08 00:07  胡梦欢  阅读(40)  评论(0编辑  收藏  举报