我正在寻找使用IPython Notebook中的列表理解来生成枚举字符串的列表。它有效,但是却给了我一个我不明白的奇怪输出。
cols = []
[cols.append('Value'+str(hour)) for hour in xrange(1,25)]
运行单元格后,cols
返回正确的列表[Value1,Value2...Value24]
,但是在我的笔记本中,我收到输出列表24 None
。示例照片
代码可以工作,但是奇怪的输出使我感到自己做错了什么,看起来很草率。为什么我得到此输出,并且有办法摆脱它?
None
您在列表中看到的s是对函数call求值的结果cols.append('Value'+str(hour))
。您会看到cols
带有正确条目的结果,因为它们会被追加,但是在此列表理解方法中生成的列表实际上仅包含append()
多次评估的结果。
试一试 cols = ['Value'+str(hour) for hour in xrange(1,25)]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句