将iterable变量从循环写入python列表
与同一问题相关的几个问题已经发布,但没有找到解决我问题的方法。我希望将循环的输出(2000个浮点的列表)放入python列表中。我得到了“variable non iterable error”,因为我没有以正确的方式调用输出的每个元素以写入列表 其他尝试,如转换为循环内的列表,会为每个元素提供一个列表,而我只需要一个包含所有元素的列表 这是我的代码:将iterable变量从循环写入python列表,python,list,Python,List,与同一问题相关的几个问题已经发布,但没有找到解决我问题的方法。我希望将循环的输出(2000个浮点的列表)放入python列表中。我得到了“variable non iterable error”,因为我没有以正确的方式调用输出的每个元素以写入列表 其他尝试,如转换为循环内的列表,会为每个元素提供一个列表,而我只需要一个包含所有元素的列表 这是我的代码: for i in range(x): timedelta= (function(i)) #datetime.timedelta elem
for i in range(x):
timedelta= (function(i)) #datetime.timedelta elements
pos_time = (i, function(i)) #tuple of an integer and a float
time = pos_time[1]
print time
如果我在这里完成,我会得到我需要的值列表:
3.5
2.04
6.6
4.02
...
如果我在循环中继续:
times = []
for time in range(x):
times.append(time)
然后我从连续的值中得到一个列表,而不是循环的输出。
我需要的是一个如下列表:
times = [3.5,2.04,6.6,4.02]
非常感谢您的帮助。在您的第二次尝试(“如果我继续在循环中”),您非常接近,只需添加函数调用:
times = [function(i) for i in range(x)]
times = []
for time in range(x):
times.append(function(time))
此外,您可能希望查看函数以直接构建函数结果列表:
map(function, range(x))
在您的第二次尝试(“如果我在循环中继续”),您非常接近,只需添加函数调用:
times = []
for time in range(x):
times.append(function(time))
此外,您可能希望查看函数以直接构建函数结果列表:
map(function, range(x))
不要打印,而是附加到时间列表:
times = []
for i in range(x):
time= (function(i))
pos_time = (i, function(i))
time = pos_time[1]
# print time
times.append(time)
我不确定我是否理解您在for循环中试图做什么:
time= (function(i))
与
time = function(i)
i、 e.使用循环变量作为参数调用函数
pos_time = (i, function(i))
创建循环变量的i
元组和对函数(i)
的第二次调用
然后获取创建的元组的第二个/最后一个值
如果每次使用i
调用function(i)
时返回相同的值,则只需执行以下操作
times = []
for i in range(x):
time = function(i)
times.append(time)
不要打印,而是附加到时间列表:
times = []
for i in range(x):
time= (function(i))
pos_time = (i, function(i))
time = pos_time[1]
# print time
times.append(time)
我不确定我是否理解您在for循环中试图做什么:
time= (function(i))
与
time = function(i)
i、 e.使用循环变量作为参数调用函数
pos_time = (i, function(i))
创建循环变量的i
元组和对函数(i)
的第二次调用
然后获取创建的元组的第二个/最后一个值
如果每次使用i
调用function(i)
时返回相同的值,则只需执行以下操作
times = []
for i in range(x):
time = function(i)
times.append(time)
谢谢你的快速回答,但恐怕这并不能满足我的要求。我得到了2000个相等元素的数组,这是循环的第一个值。谢谢你的快速回答,但我恐怕这并没有给出我想要的。我得到2000个相等元素的数组,它是循环的第一个值。