#Python程序语⾔设计基础(第⼆版)程序练习题Python程序语⾔设计基础(第⼆版)程序练习题
3.1 重量计算,⽉球上物体的体重是在地球上的16.5%,假如你在地球上每年增长
0.5kg,编写程序输出未来10年你在地球和⽉球上的体重状况。
current_weight = float(input('当前体重kg:'))
for i in range(1,11):
current_weight += 0.5
moon_weight = current_weight*16.5/100
print('第{:d}年,地球体重{:.2f}kg,⽉球体重{:.2f}kg'.format(
i,current_weight,moon_weight
))
运⾏结果:
当前体重kg:50
第1年,地球体重50.50kg,⽉球体重8.33kg
第2年,地球体重51.00kg,⽉球体重8.41kg
第3年,地球体重51.50kg,⽉球体重8.50kg
python基础代码练习
第4年,地球体重52.00kg,⽉球体重8.58kg
第5年,地球体重52.50kg,⽉球体重8.66kg
第6年,地球体重53.00kg,⽉球体重8.74kg
第7年,地球体重53.50kg,⽉球体重8.83kg
第8年,地球体重54.00kg,⽉球体重8.91kg
第9年,地球体重54.50kg,⽉球体重8.99kg
第10年,地球体重55.00kg,⽉球体重9.07kg
3.2 天天向上续。尽管每天坚持,但⼈的能⼒发展并不是⽆限的,它符合特定模型。假设能⼒增长符合如下带有平台期的模型:以7天为周期,连续学习3天能⼒值不变,从第四天开始⾄第七天每天能⼒增长为前⼀天的1%。如果7天中有1天间断学习则周期从头计算。请编写程序回答,如果初始能⼒值为1,连续学习365天后能⼒值是多少?
initial_value = 1
for i in range(365):
if i%7 in [4,5,6,0]:
initial_value = initial_value*(1+0.01)
print('{:.5f}'.format(initial_value))
运⾏结果:
8.00142
天天向上续。采⽤程序练习题3.2的能⼒增长模型,如果初始能⼒为1,固定每10天休息1天,365天后能⼒值是多少?如果每15天休息⼀天呢?
理论上说异步电机每10天休息1天
initial_value = 1
increased_capacity = 0.01
for i in range(365):
if i%7 in [4,5,6,0] and i%10 != 0:
initial_value = initial_value*(1+increased_capacity)
python爬虫论文参考文献
elasticsearch的作用print('{:.5f}'.format(initial_value))
运⾏结果:
6.49259
每15天休息1天
initial_value = 1
increased_capacity = 0.01
for i in range(365):
if i%7 in [4,5,6,0] and i%15 != 0:
initial_value = initial_value*(1+increased_capacity)
print('{:.5f}'.format(initial_value))
运⾏结果:
7.03055
乱码转换器在线转换英文
3.4 回⽂数判断,设n是⼀任意⾃然数,如果n的个位反向排列所得⾃然数与n相等,则n被称为回⽂数。从键盘输⼊⼀个5位数字,请编写程序判断这个数字是不是回⽂数。number = input('请输⼊⼀个数字:')
number_int = int(number)
if number_int/10000 >= 1:
if number[0]==number[4] and number[1]==number[3]:
print(number)
else:
print('这个数不是回⽂数')
else:
print('输⼊的数字不是5位数')
运⾏结果:
请输⼊⼀个数字:34543
34543
3.5 ⽥字格的输出。使⽤print()函数输出如图3.6所⽰样式的⽥字格。
n = eval(input('请输⼊⼀个奇数:'))
a,b,c,d = '-','┼','∣',' '
m = n//2
if n%2 == 1:
for i in range(n):
if i in [0,m,n-1]:
print('{0}{1}{0}{1}{0}'.format(b,a*m))
else:
print('{0}{1}{0}{1}{0}'.format(c,d*2*m))
else:
print('输⼊的不是奇数')
# 在maskdown中⽥字格显⽰和终端中显⽰有所区别,因此不予展⽰
3.6 ⽂本进度条。仿照实例4,打印如下形式的进度条。
实例4:
import time
scale = 10
print('------执⾏开始------')
for i in range(scale+1):
a,b = '**' * i,'..' * (scale-i)
c = (i/scale)*100
print('%{:^3.0f}[{}->{}'.format(c,a,b))
time.sleep(0.1)
print('------执⾏结束------')
修改后:
import time
scale = 100
for i in range(scale+1):
a,b = 'Staring..','Done.'
c = (i/scale)*100
if c<=99:
print('\r{} {:^3.0f}%'.format(a,c),end='')
else:
print('\r{} {:^3.0f}% {}'.format(a,c,b))
time.sleep(0.1)
capacity steamdeck
#输出效果
Staring.. 100& Done.
3.7 ⽂本风格。将如下程序段存成⽂件,在控制台终端(如Windows 的)。运⾏该程序,观察输出结果。更改print()函数的参数,例如,去掉 end 的赋值,再观察运⾏结果。源代码:
while True:
for i in ['/','-','|','\\','|']:
print('%s\r' % i,end='')
5个符号⽆限循环下去
去掉 end='' 则末尾换⾏,5个符号竖列循环
去掉 \r 则光标继续在末尾,5个符号依次横向循环
3.8 ⼩巧⽽精致的第三⽅进度条⼯具库。tqdm 是⼀个快速、扩展性强的进度条⼯具库。tqdm 是⼀个第三⽅库,⾸先需要安装,然后才能运⽤。本书8.6节将详细介绍第三⽅库的安装⽅法。请读者提前参考
阅读。运⾏如下程序,观察运⾏结果。
源代码:
from tqdm import tqdm
from time import sleep
for i in tqdm(range(1,100))
sleep(0.01)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。