相关疑难解决方法(0)

为什么列表操作不返回结果列表?

我对导致这种情况的思维过程感兴趣.对我来说,一个相对新手,似乎阻碍了,因为它阻止了列表处理的"链接"(例如mylist.reverse().append('a string')[:someLimit]).我想可能是"那些人的力量"决定列表理解是一个更好的范例(一个有效的观点),所以不想鼓励其他方法 - 但是这似乎有悖常理,以防止一种直观的方法,即使更好存在替代品.

请注意,我不是在抱怨(我敢肯定有一个合理的理由,我在它是什么只是感兴趣!),也不是寻找一个解决方案(意见在这里非常具有启发性) -只是寻找一些情况下,并深入理解语言的设计过程.

python

5
推荐指数
2
解决办法
320
查看次数

简单的尝试排序内联返回无,不知道为什么

要生成出现在set a中的值的排序列表,这可以:

a = [1,1,7,3,2,9,2]
b = list(set(a))
b.sort()
print b
Run Code Online (Sandbox Code Playgroud)

但是将两条线放在一起,它返回None:

a = [1,1,7,3,2,9,2]
b = list(set(a)).sort()
print b
Run Code Online (Sandbox Code Playgroud)

尽管这些都是真的:

 type(list(set(a))) is list
 len(list(set(a)))  > 0
Run Code Online (Sandbox Code Playgroud)

我的问题是,为什么第二种方法只返回一个排序列表 - 为什么我必须将它们放在不同的行上(如第一种方法)?

python python-2.7

1
推荐指数
1
解决办法
143
查看次数

标签 统计

python ×2

python-2.7 ×1