注册 登录
编程论坛 Python论坛

python初学者#天天向上

无知的幸福 发布于 2018-09-07 21:30, 2843 次点击
#天天向上,周末休息
dayup=1.0#基础
dayfactor=0.01#参数
for i in range(365):
    if i%7 in [6,0]:#i%7余数0-6七位,其中对应周日周六;
        dayup=dayup *(1-dayfactor)
    else:
        dayup=dayup*(1+dayfactor)
print("工作日的力量:{:.2f}".format(dayup))
>>>工作日的力量:4.63

当if i%7 in [6,0]:中 把 0 换 成 12345 中 任 一 个 输 出 结 果 为 4.72;但 如 果 有 0,另 一 个 为 任 一 个 数 其 结 果 都 是 4.63;这是为什么?
但 如 果 把 range(365)换 成range(1,366)时,只 要 有 1 结 果 就 是 4.63,否 则 为 4.72;
为 什 么 在 if 中 必 须 包 含 有 range()函 数 的 初始值(0,1)?
不 是 可 以 随 意 定 周 六 周 日 的?
1 回复
#2
傻眼猫咪2021-08-03 14:23
程序代码:

# 雖然不是很清楚你所問的問題,但是大致上 in 的方法如下:

if i in range(7): # 意思是:如果i是 0 或 1 或 2 或 3...... 或 6 (溫馨提醒:這裡從0開始,不是從1,而且最後直到6不是7哦)

if i in [0, 6]: # 意思是:如果i是 0 或 6

s = ['A', 'B', 'C']
if i in s: # 意思是:如果i是 'A' 或 'B' 或 'C
1