以下是一段Python程序 aList = range(1, 6) bList = aList aList[2] = 'hello' aList == bList

疑点:为何bList==aList?aList为[1,2,'hello',4,5],bList应为[1,2,3,4,5](未被第三行更新),而实际上bList却被更新了?... 疑点:为何bList==aList?aList为[1,2,'hello',4,5],bList应为[1,2,3,4,5](未被第三行更新),而实际上bList却被更新了? 展开
 我来答
我心我在
2016-07-27 · TA获得超过2157个赞
知道小有建树答主
回答量:784
采纳率:77%
帮助的人:632万
展开全部
aList = range(1, 6) 
bList = aList 
print id(bList),id(aList) #俩个列表指向了同一个内存地址 ,变一个 另外一个也跟着变
aList[2] = 'hello' 
print aList == bList
追问
当aList,bList为其他某些变量(如num,string)时,这并不会发生。在哪些情况下,赋值使两个变量名指向同一内存地址,以致一个变,另一个也变?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式