yooooly 发表于 2019-10-23 11:18:24

为啥我用list函数经常出现NoneType呀

list1 = []
list1 = list1.append(1232323,5)
这样打为啥会nonetype

yooooly 发表于 2019-10-23 11:20:30

AttributeError: 'NoneType' object has no attribute 'append'

jackz007 发表于 2019-10-23 12:38:00

      list1 . append() 无返回值,只要执行了 list1 . append() 语句,新的元素就会添加到 list1 中,并成为列表的最后一个元素。但是,如果你写了 list1 = list1 . append() 那么,由于 list1 . append() 没有返回值,所以,list1 的值就会变成 None,你原来的列表 list1 就完全被丢掉了。

yooooly 发表于 2019-10-23 12:56:12

jackz007 发表于 2019-10-23 12:38
list1 . append() 无返回值,只要执行了 list1 . append() 语句,新的元素就会添加到 list1 中,并成 ...

改成list2=list1.append好像也不行

jackz007 发表于 2019-10-23 13:40:15

本帖最后由 jackz007 于 2019-10-23 13:42 编辑

    给你说过 list . append() 无返回值,意思就是 list . append() 不可以 被赋值给任何一个变量!!!

yooooly 发表于 2019-10-23 14:14:14

jackz007 发表于 2019-10-23 13:40
给你说过 list . append() 无返回值,意思就是 list . append() 不可以 被赋值给任何一个变量!!!

就是说append()里只能加入确定的量对吗

jackz007 发表于 2019-10-23 14:16:40

本帖最后由 jackz007 于 2019-10-23 14:20 编辑

yooooly 发表于 2019-10-23 14:14
就是说append()里只能加入确定的量对吗

   list2 = list1 . append()
   你听不懂中国话吗?关键是不可以用等号赋值!!!

   如果要赋值,你必须这么写:
      list1 . append(1232323)
      list2 = list1[:]
      一定要写成两行,必须是两行,明白了?

yooooly 发表于 2019-10-23 16:21:53

jackz007 发表于 2019-10-23 14:16
list2 = list1 . append()
   你听不懂中国话吗?关键是不可以用等号赋值!!!



明白了 谢谢
页: [1]
查看完整版本: 为啥我用list函数经常出现NoneType呀