Python小测验(02)
1、猜数字游戏
2、实现一个函数可判断一个数字是否为质数
3、实现一个函数可判断一个数字是否为回文数
4、编写程序实现中美汇率转换
5、球体100米落地弹起运算
6、使用python创建一个简易的Excel表,并画出用户年龄折线图
1、猜数字游戏
在程序设计中随机预设一个0-100的数字,让用户通过键盘输入所猜数字。如果输入的数字比预设数字大,显示“遗憾,太大了”;小于预设数字则显示“遗憾,太小了”,如此循环,直到猜中该数字为止,如果猜中,则显示“恭喜你,猜中了!”
脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import random
M = random.randint(0, 100) # 这里生成0~100之间的一个随机数为预设数字
N = 0 # 记录猜数次数
while True:
N+=1
m = input("请输入0-100之间你猜想的数字:")
if eval(m) > M:
print("遗憾,太大了")
elif eval(m) < M:
print("遗憾,太小了")
else:
break
print("预测了{}次,你猜中了,答案就是{}".format(N, M))
运行结果:
2、实现一个函数可判断一个数字是否为质数
脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
num = int(input("请输入一个数字: "))
# 质数大于 1
if num > 1:
# 查看因子
for i in range(2, num):
if (num % i) == 0:
print(num, "不是质数")
print(i, "乘于", num // i, "是", num)
break
else:
print(num, "是质数")
# 如果输入的数字小于或等于 1,不是质数
else:
print(num, "不是质数")
运行结果:
3、实现一个函数可判断一个数字是否为回文数
所谓的回文数是该数字正向读和反向读是同一个数字。比如123321,34543。
脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
x = input("请输入任意数字:")
if x == x[::-1]: print("回文数")
else: print("不是回文数")
运行结果:
4、编写程序实现中美汇率转换
让用户输入人民币金额,输出对应的美元金额(按1美元=7元人民币计算)
脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
x = input("请输入带有标识的金钱值,请输入人民币r或者R,请输入美元¥或者$:")
if x[-1] in ['r', 'R']:
D = (eval(x[0:-1])/7)
print("转换后的美元为${:0.2f}".format(D))
elif x[-1] in ['¥', '$']:
R = (eval(x[0:-1])*7)
print("转换后的人民币为{:0.2f}RMB".format(R))
else:
print("输入格式错误")
运行结果:
5、球体100米落地弹起运算
编写程序计算一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
sn = 100 # 高度
hn = sn/2
for n in range(2, 10):
sn = sn + 2*hn # 第n次落地时共经过的米数
hn = hn/2 # 第n次反跳高度
print("第10次落地共经过:", sn, "米")
print("第9次反弹", hn, "米高")
运行结果:
6、使用python创建一个简易的Excel表,并画出用户年龄折线图
脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import xlsxwriter
# 创建工作簿
wk = xlsxwriter.Workbook('test.xlsx')
# 创建表单
sh = wk.add_worksheet('test')
fmt1 = wk.add_format()
fmt2 = wk.add_format()
# 字体加粗
fmt1.set_bold(True)
# 设置左对齐
fmt2.set_align('left')
# 数据
data = [
['', '姓名', '年龄'],
['', '张三', 10],
['', '李四', 40],
['', '王五', 30],
['', '赵六', 20],
['年龄分布', '', ]
]
sh.write_row('A1', data[0], fmt1)
sh.write_row('A2', data[1], fmt2)
sh.write_row('A3', data[2], fmt2)
sh.write_row('A4', data[3], fmt2)
sh.write_row('A5', data[4], fmt2)
sh.write_row('A6', data[5], fmt1)
'''
area:面积图
bar:直方图
column:柱状图
line:折线图
pie:饼图
doughnut:环形图
radar:雷达图
'''
chart = wk.add_chart({'type': 'line'})
# 创建图表
chart.add_series(
{
'name': '=test!$B$1',
'categories': '=test!$B$2:$B$5',
'values': '=test!$C$2:$C$5'
}
)
chart.set_title({'name': '用户年龄折线图'})
chart.set_x_axis({'name': '姓名'})
chart.set_y_axis({'name': '年龄'})
sh.insert_chart('A9', chart)
wk.close()
运行结果:
本文分享自 AllTests软件测试 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!