几周前,我刚刚开始学习python,最先学习的内容之一是如何操作列表。通常情况下,如果我有一个列表,并希望附加一个新元素,它会像这样
test_list=[1,2,3]
test_list.append(4)
我只是想知道为什么我们不说
test_list=test_list.append(4)
我想到了这个想法,因为通常对于变量“x”,如果我们想更新它的值,我们会执行以下操作:
x=initial_value
x=new_value
对于列表的情况也是如此,是否test_list.apppend(4)
表示具有相同test_list
元素的列表并包含额外的元素4?在这种情况下,为什么我们不能在两种情况下使用相同的语法来更新存储信息的变量?在列表的情况下,如果我尝试打印列表,我得到None
,在x
的情况下,如果我打印x
,我得到new_value
Python中的列表与其说是类型,不如说是类。函数向列表中添加一个元素,但不返回任何内容
这都是关于面向对象编程的。如果你对它不熟悉,读一读。简而言之,
append
是属于list
类的对象的方法。基本上,这种方法可以有两种表现:1)像它一样,改变自我对象
及
2)如何描述,生成新对象(顺便说一句,这是JavaScript中类似的
Array.concat
方法的行为)因此,这个实现只是语言设计的一部分,是语言创造者做出的决定,我们必须承认并以这种方式使用它:)
相关问题 更多 >
编程相关推荐