Python学习第三天的课后作业记录
Python学习第三天的课后作业
第一题:天天向上(周一到周五进步0.01,周末退步0.01程序)
程序代码如下:
base = 1
factory = 0.01
# 周一到周五进步0.01 周六周日退步0.01
for i in range(365):
if i%7 == 6 or i%7 == 0:
base *= (1-0.01)
else:
base *= (1+factory)
# 一年进步这么多
print(base)
运行结果:
4.626500529730141
第二题:文本进度条(终极版)
程序代码如下:
# 大致样式是这样的:0 %[->..........] 1.03s
import time
start1 = '进度条开始执行'
print(f'{start1:-^20}')
scale = 100
start_time = time.perf_counter()
for i in range(scale+1):
print(f'\r{i:^4.1f}% [{"*"*i}->{"."*(scale-i)}] {time.process_time()-start_time:.2f}s',end='')
time.sleep(0.1)
print(f'\n{"进度条执行结束":-^20}')
运行结果:
------进度条开始执行-------
100.0% [****************************************************************************************************->] 0.03s
------进度条执行结束-------
第三题:获得用户输入的一个整数a,计算a的平方根,保留小数点后3位,并打印输出。输出结果采用宽度30个字符、右对齐输出、多余字符采用加号(+)填充。如果结果超过30个字符,则以结果宽度为准。
示例:输入:10 ,输出:+++++++++++++++++++++++++3.162
具体代码如下:
a = input("请输入一个整数:")
# 得到保留三位之后的开平方结果值
b = round(pow(int(a),0.5),3)
# 判断结果是否大于30个字符
if len(str(b))>30:
print(b)
else:
print(f'{b:+>30}')
运行结果:
请输入一个整数:17
+++++++++++++++++++++++++4.123
第四题:获得输入的一个字符串s,以字符减号(-)分割s,将其中首尾两段用加号(+)组合后输出。
示例:输入:Alice-Bob-Charis-David-Eric-Flurry,输出:Alice+Flurry
具体代码如下:
s = input("请输入一串字符串中间用-分割开来:")
num = len(s)
strl = ''
for i in range(num):
if s[i]=='-':
a = s[:i]
strl+=a+'+'
elif s[-i]=='-':
b = s[-i+1:]
strl+=b
break
print(strl)
运行结果:
请输入一串字符串中间用-分割开来:Alice-Bob-Charis-David-Eric-Flurry
Alice+Flurry