看板 Python 關於我們 聯絡資訊
請問一下版上各位,為甚麼這程式 會印出none呢?? From copy import deepcopy list_a = ["a","b","c"] list_b = deepcopy(list_a) list_b.pop(1) list_c = list_b.insert(2,"hahahah") print(list_c) 結果顯示None的原因是什麼? 照理來說,我不是已經先將字串hahaha 插入串列中,在附值給list_c這物件 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.25.41 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1563732877.A.2A3.html
crazycy: insert() 只會回傳 None 07/22 02:37
crazycy: list_b.insert(2,"hahahah") 07/22 02:37
crazycy: list_c = list_b 07/22 02:38
crazycy: 分成兩行就行 07/22 02:38
yummy8765: 那行的意思是 你在list_b裡面insert 07/22 05:13
yummy8765: 但insert是沒有回傳值的 07/22 05:14
yummy8765: 所以list_c = None(即右邊那坨) 07/22 05:14
yummy8765: 除了打list_c = list_b以外 07/22 05:15
yummy8765: 也可以打list_c = list_b.copy() 07/22 05:15
(ノ>ω<)ノ(ノ>ω<)ノ(ノ>ω<)實在太感謝啦 ※ 編輯: spong (175.182.93.24 臺灣), 07/22/2019 06:24:44
froce: 因為你寫錯了,insert是直接插入list改變原list,沒有傳回 07/22 06:57
froce: 值 07/22 06:57
TitanEric: python文件規定沒有回傳值至少要回傳None 所以insert 07/22 10:14
TitanEric: 回傳的就如你所示~ 07/22 10:14