我做了相当多的阅读,但我对我试图理解的概念没有明确的答案。
在 Python 中,如果我取一个列表,例如:
L1=['muffins', 'brownies','cookies']
然后尝试使用以下代码替换指向列表中对象的第一个指针,即“松饼”:
L1[0:1] = 'cake'
我会得到一个列表 L1:
['c', 'a', 'k', 'e', 'brownies', 'cookies']
然而,如果我采用相同的列表并执行操作(现在使用字符串 cake 中的 4 个元素):
L1[0:4] = ['cake'] # presumably, it's now passing the string cake within a list? (it passed into the modified list shown above)
我得到了我最初想要的输出:
['cake', 'brownies', 'cookies']
谁能解释一下为什么会这样?我假设当我最初拿蛋糕时没有将它放在“列表”中,它会将字符串分解为单独的字符,以存储为对这些字符的引用,而不是对字符串的单个引用......
但我不完全确定。