对于upper()这样的方法,如果在print时使用,并不会真正应用到变量上:
name = 'Luke'
print(name.upper())
print(name)
LUKE
Luke
但对于pop()和remove(),在print时就会实际作用在列表上,为什么呢?
motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles.pop())
print(motorcycles)
suzuki
['honda', 'yamaha']
刚开始入门,感谢回答。
如果你入门还没了解到
对象 class
,那就先去了解对象,否则下面你也看不懂。python里,一切都是对象,
print
只是调用了对象的__str__
的方法。list.pop()
方法改变了对象属性,而str.upper()
没有,大致逻辑如下