所以我有这个:
Channel.groups.sort() # Channel.groups is a list of strings
for country in Channel.groups:
print(country)
但我想做这样的事情:
for country in Channel.groups.sort():
print(country)
# This results in error: TypeError: 'NoneType' object is not iterable
是否有可能以某种方式强制Channel.groups.sort()
执行"执行"在它开始遍历列表之前?
答案 0 :(得分:4)
sort()
已就位,这意味着它会修改调用它的原始列表并返回None
(这就是您收到错误'NoneType' object is not iterable
的原因)。
您需要使用保留原始列表的内容并返回一个新的排序列表,例如sorted()
:
for country in sorted(Channel.groups)