是否有一种针对Python元组进行计算的正确方法?
我刚刚在我写的东西上发现了一个问题,我希望我能对发生的事情有一个正确的解释,以及最好的解决方法。我有一个解决方案,但不确定这是否是最好的解决方案 我有一个变量是否有一种针对Python元组进行计算的正确方法?,python,Python,我刚刚在我写的东西上发现了一个问题,我希望我能对发生的事情有一个正确的解释,以及最好的解决方法。我有一个解决方案,但不确定这是否是最好的解决方案 我有一个变量interval,它是一个字符串。在这个场景中,让我们假设interval='Day' 代码将其与if和elif表达式中的元组进行比较: if interval in ('FiscalWeekDaily','Daily'): ... ... elif interval in ('DayHourly'): 现在我以为('DayHou
interval
,它是一个字符串。在这个场景中,让我们假设interval='Day'
代码将其与if
和elif
表达式中的元组进行比较:
if interval in ('FiscalWeekDaily','Daily'):
...
...
elif interval in ('DayHourly'):
现在我以为('DayHourly')中的'Day'会计算为False
,但结果却是True
。对此的确切解释是什么?我假设,由于只有1个元素,所以将“Day”与该元素进行比较
因此,如果我在('DayHourly','Anwhere')
中尝试'Day',它的计算结果为False
,因为'Day'是针对每个元素计算的,对吗
因此,我的解决方案就是['DayHourly']中的elif间隔:
。这是正确的方法吗?包含单个对象的元组需要有一个逗号,是逗号构成元组,而不是括号
换言之:
('DayHourly') == 'DayHourly'
如果想要('DayHourly',)
包含单个对象的元组,则需要有一个逗号,构成元组的是逗号,而不是括号
换言之:
('DayHourly') == 'DayHourly'
您希望('DayHourly',)
('DayHourly')
不是元组。它只是'DayHourly'
('DayHourly')
不是一个元组。只是“每小时一天”
。