我是编程新手,并且一直在尝试使用python进行研究计算。我需要编写一个类似这样的程序:
如果chelDays = [0,1,5,7] 对于从1到100的每个时间t,如果t> 1,我需要t-chelDays用于列表chelDays的每个成员。 tchelDays。例如,我会得到以下结果:see image
这是我试过的:
chelDays = [0, 1, 5, 7]
while t <100:
if t > tj:
print (t, t-tj)
else:
print (t, " ")
t +=1
编辑:
终于找到了我的解决方案:
Tau =(0,1,5,7)
def tMinusTau(t,tj):
如果t> TJ:
返回t-tj
其他:
返回“”
对于范围内的t(1,100):
print(t,tMinusTau(t,Tau [0]),tMinusTau(t,Tau 1),tMinusTau(t,Tau [2]),tMinusTau(t,Tau [3]))
答案 0 :(得分:4)
for
循环是迭代集合中项目的pythonic方法。您可以使用range
为一系列数字获得相同的效果。例如,range(1,100)
数字是1-99(因为停靠号是非包含的)
因此,如果您想迭代t = 1到t = 100,然后检查每个t
区间的chelDays中的每个项目,您可以执行以下操作:
for t in range(1,101):
for tj in chelDays:
if t > tj:
#dostuff
else:
#dostuff
编辑:事后看来,目前还不清楚你是否想检查chelDays中的每一件物品。你可能意味着所有日子的总价值。如果是这种情况,您可以按sum(chelDays)
汇总值,例如sum([1,2,3]) == 6
或者如果您想要该列表中的项目数,您可以{{1} 1}}例如len(chelDays)
最后,您可以为自己和其他人阅读代码做一件好事,尝试让您的变量名称准确描述它们是什么。 len([504,123,234]) == 3
,x
,y
等变量名称通常不合适。当然,有些情境,例如var
x
y
之类的数学公式完全正常。