为什么追加在此代码中不返回任何内容?list = [1, 2, 3]print list.append(4) ## NO, does not work, append() returns None## Correct pattern:list.append(4)print list ## [1, 2, 3, 4]我正在学习Python,我不确定这个问题是否是特定于该语言的,以及如何在Python中实现追加。
4 回答
白衣非少年
TA贡献1155条经验 获得超0个赞
append
append
l = [1,2,3]print l + [4] # [1,2,3,4]print l # [1,2,3]
append
m = l.append("a")n = l.append("b")
n
[1,2,3,"b"]
神不在的星期二
TA贡献1963条经验 获得超6个赞
None
.
>>> a_list = [3, 2, 1]>>> print a_list.sort()None>>> a_list[1, 2, 3]>>> a_dict = {}>>> print a_dict.__setitem__('a', 1) None>>> a_dict{'a': 1}>>> a_set = set()>>> print a_set.add(1)None>>> a_set set([1])
有些集合类是可变的。添加、减除或重新排列其成员位置的方法,而不返回特定项的方法,永远不会返回集合实例本身,但是 None
.
为什么不 list.sort(
)返回排序列表?
在性能重要的情况下,只为排序而复制列表将是浪费的。因此, list.sort()
对列表进行排序。为了提醒您这个事实,它不返回排序列表。这样,当您需要排序的副本时,您不会被不小心地覆盖列表,但也需要保留未排序的版本。
在Python2.4中,一个新的内置函数- sorted()
-增加。此函数根据提供的可迭代性创建一个新列表,对其进行排序并返回它。
千巷猫影
TA贡献1829条经验 获得超7个赞
friends=["Rajendra V"]friends.append("John")print(friends)
添加回答
举报
0/150
提交
取消