為什么追加在此代碼中不返回任何內容?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個贊
appendappend
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
提交
取消
