1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 【Python】实例3:天天向上的力量与微实例:星期转换 恺撒密码

【Python】实例3:天天向上的力量与微实例:星期转换 恺撒密码

时间:2024-06-15 13:50:27

相关推荐

【Python】实例3:天天向上的力量与微实例:星期转换 恺撒密码

3.1 每天努力0.001

import mathdayup = math.pow((1.0+0.001), 365)daydown = math.pow((1.0-0.001), 365)print("向上:{:.2f},向下:{:.2f}".format(dayup, daydown))

3.2 每天努力0.005

import mathdayup = math.pow((1.0+0.005), 365)daydown = math.pow((1.0-0.005), 365)print("向上:{:.2f}, 向下:{:.2f}".format(dayup, daydown))

3.3 引入变量

import mathdayfactor = 0.001dayup = math.pow((1.0+dayfactor), 365)daydown = math.pow((1.0-dayfactor), 365)print("向上:{:.2f}, 向下:{:.2f}".format(dayup, daydown))

3.4 每个工作日提高1%,休息日下降1%

factor=0.01dayup=1for i in range(365):if i%7 in [6,0]:dayup=dayup*(1-factor)else:dayup = dayup * (1 + factor)print("工作日每天提高0.01,休息日降低0.01:{:.2f}".format(dayup))

3.5 每周工作五天,休息两天,休息日水平下降0.01,工作日要努力到什么程度才能赶上每天努力1%取得的的效果

# 参数不同,这段代码可共用# def保留字用于定义函数# df参数为占位符,表示dayfactor的简写,根据df参数计算工作日力量的函数def dayUP(df):dayup = 1 # 这是第一天for i in range(365):if i % 7 in [6, 0]:dayup = dayup * (1 - 0.01)else:dayup = dayup * (1 + df)return dayup # 这是最后一天dayfactor = 0.01# while保留字判断条件是否成立# 条件成立时循环执行while dayUP(dayfactor) < 37.78:dayfactor += 0.001print("工作日的努力参数是:{:.3f} ".format(dayfactor))

微实例3.1 星期的转换

#微实例3.1获取星期几字符串weekstr="星期一星期二星期三星期四星期五星期六星期日"weekid=eval(input("请输入星期数字(1-7):"))pos = (weekid -1)*3print(weekstr[pos:pos+3])

weekstr("一二三四五六日")weekid=eval(input("请输入星期数字(1-7):"))print("星期"+weekstr[weekstr -1])

【拓展】

微实例3.2 恺撒密码的加密运算

"""恺撒密码原理:原文:ABCDEFGHIGKLMNOPQRSTUWXYZ密文:DEFGHIGKLMNOPQRSTUWXYZABC原文(P)=(C-3)mod 26密文(C)=(P+3)mod 26"""plaincode = input("请输入明文:")for p in plaincode:if ord("a") <= ord(p) <= ord("z"):# 判断输入的明文为英文字符则执行加密算法,否则输入原明文字符print(chr(ord("a") + (ord(p)-ord("a")+3) %26), end="")# 先将明文字符的Unicode编码用ord()计算出来,再通过chr()进行转换成字符# 先用原始字母减去字母a,计算出p与a相差多少,记作n。用a加上相差数,即可得到p的unicode编码。然后加上偏移量3,表示要将p加密为第a+n+4个字母。# 此处的“%26”的含义是避免最后的unicode编码数值超出范围,假如输入x,y,z,a+n+3后对应到a,b,celse:print(p, end=" ")

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。