【发布时间】:2018-08-10 11:04:04
【问题描述】:
我相信用一个例子可以更好地理解这个问题,比如说我有一个 for 循环,我想改变它是迭代一个 dict 还是迭代一个取决于变量的值范围。对于示例:
my_dict = [ 'value_a':5, 'value_b':8, ... ]
if some_boolean:
for i in range(0, 10):
else:
for i in my_dict:
# body of the for loop
这不起作用,因为第一个 for 语句下没有任何内容。我曾想过用 range() 的值制作一个字典,或者将循环体写两次,但我想知道是否有更优雅的解决方案。
有没有什么方法可以做到这一点,而不用对变量做奇怪的事情?
谢谢!
【问题讨论】:
-
您要动态执行此操作吗?或者只是在循环的开始?变量是否能够在循环内更改并更改可迭代对象?
标签: python python-3.x for-loop