在线
客服

发布
需求

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

可变类型list传入函数后为什么外部的list未发生改变,求解惑!

def changeme( mylist ):
   "修改传入的列表"
   mylist=[1,2,3,4];
   print ("函数内取值: ", mylist)
   return
>>> mylist = [10,20,30]
>>> changeme( mylist )
>>> print("函数外取值: ", mylist)
         
打印结果:
函数内取值:  [1, 2, 3, 4]
函数外取值:  [10, 20, 30]


这里list明明是可变的类型,为什么函数外取值没有也变掉啊?

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与1

mylist=[1,2,3,4]因为这一句是直接设置,相当于改变了mylist所指向的地址。
mylist[1]=123mylist[:]=[1,2,3,4]你可以像这样只改变其所指向地址的内容

使用道具 举报

发新帖
国内首家创新型IT技术需求众包服务平台,软件需求就上天盟网! 立即登录 立即注册