python:将标量视为一个元素列表

python:将标量视为一个元素列表,第1张

概述我正在编写一个 python脚本来处理从文件中读取的列表: l = readListFromFile( myFile )for i in l : # do something to each element 当l有多个元素时,一切正常. 但是,当列表中只有一个元素时,readFromFile会将l作为标量而不是列表返回.因此,我失败了,错误 object is not iterable 我正在编写一个 python脚本来处理从文件中读取的列表:

l = readListFromfile( myfile )for i in l :    # do something to each element

当l有多个元素时,一切正常.
但是,当列表中只有一个元素时,readFromfile会将l作为标量而不是列表返回.因此,我失败了,错误

object is not iterable

我无法控制readFromfile,我的问题是即使在l只有一个元素的情况下,我怎么能让python把l作为一个aList?

解决方法 一个简单的解决方案是

l = readListFromfile(myfile)try:    i = iter(l)    if isinstance(l,str):        i = l except TypeError:    i = [l]for .... in i

即使您更改了readListFromfile以返回另一个iterable,这也会有效.

如果保证是str或列表(或其他可迭代)的单线程解决方案就是

l = readListFromfile(myfile)for e in [l] if isinstance(l,str) else l:

只使用三元运算符.

顺便说一句,有一个名为readList的方法…并不总是返回一个列表是邪恶的.

总结

以上是内存溢出为你收集整理的python:将标量视为一个元素列表全部内容,希望文章能够帮你解决python:将标量视为一个元素列表所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1192892.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存