一、字符串
字符串也可以用下标取值、切片、for循环、len()取长度以及 in 和 not in 来进行操作。
但字符串是不可变的,不能被更改。只能构造一个“新的”字符串来存取你想要修改后的数据。
二、元组
元组与列表几乎一样,但是元组输入时使用小括号并且元组和字符串一样,不可变。
如果元组中只有一个值,你可以在括号内该值的后面跟上一个逗号,表明这种情况。否则,Python将认为你只是在括号内输入了一个值。 #列表最后也可以是逗号
三、引用
列表赋给一个变量时,实际上是将列表的“引用”赋给了该变量。引用是一个值,指向某些数据(列表的实际位置)。
根据上图所示,按道理a的值不应被修改,但是列表赋给a的是列表的“引用”,a赋给b的也是列表的“引用”,a和b都指向同一个地方(列表的实际位置)。
如果你不希望修改b时a的值也变化那么你可以使用python的copy()模块。python提供了名为copy()的模块,其中包含copy()和deepcopy()函数。
而copy.copy()函数可以复制列表或字典这样的可变值,而不是复制其“引用”。
当你要复制的列表中包含了列表,那就使用copy.deepcopy()函数来代替。
如果只使用copy()来复制包含了列表的列表时,仅仅只将外面的大列表给复制了,但是里面小的列表还是“引用”,如:
使用deepcopy()便可以将所有的列表复制,如:
更深的列表嵌套也没问题: