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

实验任务1

task1_1.py

程序源码

 1 # print输出的几种用法
 2 
 3 #用法1:用于输出单个字符串或单个变量
 4 print('hey,u')
 5 
 6 #用法2: 用于输出多个数据项,用逗号分隔
 7 print('hey,u')
 8 x,y,z=1,2,3
 9 print(x,y,z)
10 
11 #用法3:用户混合字符串和变量值
12 print('x = %d, y = %d, z = %d' %(x,y,z))
13 print('x = {}, y = {}, z = {}'.format(x,y,z))
14 print(f'x = {x}, y = {y}, z = {z}')
15 
16 #其他: 输出后是否换行
17 print(x)
18 print(y)
19 print(z)
20 
21 print(x, end=' ')
22 print(y, end=' ')
23 print(z)

运行测试截图:

task1_2

程序源码

 1 #使用字符串的format()方法,对输出数据项进行格式化
 2 
 3 x1,y1 = 1.2,3.57
 4 x2,y2 = 2.26,8.7
 5 
 6 #输出1
 7 print('{:-^40}'.format('输出1'))
 8 print('x1 = {},y1 = {}'.format(x1,y1))
 9 print('x2 = {},y2 = {}'.format(x2,y2))
10 
11 # 输出2
12 print('{:-^40}'.format('输出2'))
13 print('x1 = {:.1f}, y1 = {:.1f}'.format(x1,y1))14 print('x2 = {:.1f}, y2 = {:.1f}'.format(x2,y2))
15 
16 #输出3
17 print('{:-^40}'.format('输出3'))
18 print('x1 = {:<15.1f}, y1 = {:<15.1f}'.format(x1,y1))
19 print('x2 = {:<15.1f}, y2 = {:<15.1f}'.format(x2,y2))
20 
21 #输出4
22 print('{:-^40}'.format('输出3'))
23 print('x1 = {:>15.1f}, y1 = {:>15.1f}'.format(x1,y1))
24 print('x2 = {:>15.1f}, y2 = {:>15.1f}'.format(x2,y2))

 运行测试截图:

 

task1_3

程序源码:

 1 # 使用f_string方式输出数据并控制格式
 2 
 3 name1, age1 = 'Bill', 19
 4 name2, age2 = 'Hellen', 18
 5 title = 'Personnel Information'
 6 
 7 print(f'{title:=^40}')
 8 print(f'name: {name1:10} age: {age1:3}')
 9 print(f'name: {name2:10} age: {age2:3}')
10 print(40*'=')

运行测试截图:

 

实验一(总结):

print输出的几种用法

1.用于输出单个字符串或单个变量

2.用于输出多个数据项,用逗号分隔

3.用户混合字符串和变量值

4.输出后是否换行

5.利用占位实现输出

6.用format函数进行格式化

7输出.f-string模式(print(f ' ')中间量用{}引用)

 

实验任务2

task2_1

程序源码:

 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

程序源码:

 

1 # 组合使用内置函数eval()和input()
2 
3 x,y = eval(input('Enter two oprands: '))
4 ans = x + y
5 
6 print(f'{x} + {y} = {ans}')
7 print(f'{type(x)} + {type(y)} = {type(ans)}')

运行程序截图:

 实验二(总结)

函数eval()的用法

1.把字符串转换为python表达式,相当于把圆括号中的内容,两侧引号去掉

2.转换input()字符串格式

 

task3

程序源码:

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

运行结果截图:

 

 Q1:因为浮点数存储时小数部分往往无法精确表示(二进制计算),只能舍入后存储,所以会产生误差。

Q2:以十进制方法计算。decimal是符合人类运算习惯的浮点数模型。因此不会产生二进制计算中的误差。

 

task4

程序源码:

 1 # chr()返回unicode编码对应的字符
 2 
 3 print(chr(0x1f600), end = " ")
 4 print(chr(0x1f601), end = " ")
 5 print(chr(0x1f602), end = " ")
 6 print(chr(0x1f604))
 7 
 8 print(chr(10000), end=" ")
 9 print(chr(0x025b), end=" ")
10 print(chr(0x2708), end=" ")
11 print(chr(0x00A5), end=" ")
12 print(chr(0x266b))
13 
14 #ord()返回字符的unicode编码
15 print(ord('a'), end = " ")
16 print(ord('b'), end = " ")
17 print(ord('c'))
18 
19 print(ord('A'), end = " ")
20 print(ord('B'), end = " ")
21 print(ord('C'))
22 
23 print(ord('0'), end = " ")
24 print(ord('1'), end = " ")
25 print(ord('2'))

运行程序截图:

 实验四(总结)

chr()转换成整数对应的ASCⅡ字符

ord()转换成ASCⅡ字符对应的整数

 

task5_1

程序源码:

 1 # 简单的数字计算
 2 import math
 3 
 4 n = float(input('输入一个数:'))
 5 
 6 #python中计算开平方的三种方式
 7 ans1 = n**0.5
 8 ans2 = pow(n, 0.5)
 9 ans3 = math.sqrt(n)
10 
11 print('%.2f的平方根是: %.2f' %(n, ans1))
12 print('{:.2f}的平方根是: {:.2f}'.format(n, ans2))
13 print(f'{n:.2f}的平方根是: {ans3:.2f}')

运行程序截图:

 

task5_2

程序源码:

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

运行程序截图:、

 

 

task6

程序源码:

 

1 x = float(input('Enter a number'))
2 y = x**365
3 print(y)

运行程序截图:

 

 

task7

程序源码:

 1 #煮出一个完美的鸡蛋
 2 
 3 from math import pi
 4 
 5 ρ = 1.038
 6 c = 3.7
 7 K = 5.4*10**(-3)
 8 Tw = 100
 9 Ty = 70
10 
11 T0 = eval(input('请输入温度:'))
12 M = eval(input('请输入鸡蛋质量'))
13 import math
14 
15 t = (M**(2/3)*c*ρ**(1/3))/(K*pi**2*(4*pi/3)**(2/3))*math.log(0.76*(T0-Tw)/(Ty-Tw),math.e)
16 a = int(t//60)
17 b = int(t%60)
18 print('T0=',T0,'℃, t=',a,'',b,'')

运行程序截图:

 

 

task8_1

程序源码:

 1 """
 2 家用电器销售系统
 3 v1.0
 4 """
 5 
 6 #欢迎信息
 7 print('欢迎使用家用电器销售系统!')
 8 
 9 #产品信息列表
10 print('产品和价格信息如下: ')
11 print('******************************************')
12 print('%-10s' %'编号', '%-10s' %'名称', '%-10s' %'品牌', '%-10s' %'价格', '%-10s' %'库存数量')
13 print('-------------------------------------------------')
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('-------------------------------------------------')
24 
25 #用户输入信息
26 product_id=input('请输入您要购买的产品编号: ')
27 price=float(input('请输入您要购买的产品价格: '))
28 count=int(input('请输入您要购买的产品数量: '))
29 #计算金额
30 print('购买成功,您需要支付',price*count, '')
31 
32 #退出系统
33 print('谢谢您的光临,下次再见!')

运行程序截图:

 

task8_2

程序源码:

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

运行测试截图:

 

 

task8_3

程序源码:

 1 """
 2 家用电器销售系统
 3 v1.0
 4 """
 5 
 6 #欢迎信息
 7 print('欢迎使用家用电器销售系统!')
 8 
 9 #产品信息列表
10 print('产品和价格信息如下: ')
11 print('******************************************')
12 print('%-10s' %'编号', '%-10s' %'名称', '%-10s' %'品牌', '%-10s' %'价格', '%-10s' %'库存数量')
13 print('-------------------------------------------------')
14 print(f"000{'1':<7s}{'电视机':<10s}{'海尔':<10s}{5999:<15.2f}{'20':<10s}")
15 print(f"000{'2':<7s}{'冰箱':<10s}{'西门子':<10s}{6998:<15.2f}{'15':<10s}")
16 print(f"000{'3':<7s}{'洗衣机':<10s}{'小天鹅':<10s}{1999:<15.2f}{'10':<10s}")
17 print(f"000{'4':<7s}{'空调':<10s}{'格力':<10s}{3900:<15.2f}{'0':<10s}")
18 print(f"000{'5':<7s}{'热水器':<10s}{'美的':<10s}{688:<15.2f}{'30':<10s}")
19 print(f"000{'6':<7s}{'笔记本':<10s}{'联想':<10s}{5699:<15.2f}{'10':<10s}")
20 print(f"000{'7':<7s}{'微波炉':<10s}{'苏泊尔':<10s}{480.5:<15.2f}{'33':<10s}")
21 print(f"000{'8':<7s}{'投影仪':<10s}{'松下':<10s}{1250:<15.2f}{'12':<10s}")
22 print(f"000{'9':<7s}{'吸尘器':<10s}{'飞利浦':<10s}{999:<15.2f}{'9':<10s}")
23 print('-------------------------------------------------')
24 
25 #用户输入信息
26 product_id=input('请输入您要购买的产品编号: ')
27 price=float(input('请输入您要购买的产品价格: '))
28 count=int(input('请输入您要购买的产品数量: '))
29 #计算金额
30 print('购买成功,您需要支付',price*count, '')
31 
32 #退出系统
33 print('谢谢您的光临,下次再见!')

运行测试截图:

 

posted @ 2023-03-13 22:01  裴书语  阅读(30)  评论(0)    收藏  举报