首页 python正文

Python 字典作为函数参数传递,可全局修改字典

启明SEO python 2022-02-21 19:26:21 2617 0 Python 字典

今天在使用字典作为函数参数传递时发现,在被调用函数中修改传递过去的字典,再返回使用的话,字典的值是已经被修改后的,而不是函数调用前的。看如下代码:

def a():
    con={}
    con['a']='a'
    b(con)
    print(con)
def b(con):
    con['b']='b'

def main():
    a()
if __name__ == '__main__':
    main()

在a函数中定义字典con,并给出一个a键,值为‘a’,再将con作为参数传递到函数b中,并给一个键b,值为‘b’。输出结果如下:

{'a': 'a', 'b': 'b'}

这里我并没有将修改后的con返回回去,下面我再给大家看看,如果return 回去是怎样的。代码如下:

def a():
    con={}
    con['a']='a'
    con2=b(con)
    print(con2)
def b(con):
    con['b']='b'
    return con

def main():
    a()
if __name__ == '__main__':
    main()

打印后的结果同样为:

{'a': 'a', 'b': 'b'}


所以,如果将字典作为参数传递,记得调用函数如果做了修改,那么返回再使用字典的话就是修改后的值了。

评论

Python好学公众号

好文推荐

实时访客入口页面出现bd_vid=标识是什么原因

实时访客入口页面出现bd_vid=标识是什么原因

最近查看百度实时访客,总是会看到入口页面会多......

有了微信视频号,但是没有发布权限,怎么开通

有了微信视频号,但是没有发布权限,怎么开通

视频号是微信在2020年1月19号开始内测的......

如何用python抓取爱企查企业信息

如何用python抓取爱企查企业信息

前段时间,经理让我去找一些企业的信息,我平常......

网站始终只收录一个首页,为什么

网站始终只收录一个首页,为什么

新做了两个网站,但是一直只是收录一个首页,快......

服务器配置低,宝塔面板安装IIS总是安装不上怎么办

服务器配置低,宝塔面板安装IIS总是安装不上怎么办

对于一般企业网站或者博客来说,对服务器的配置......

如何修改浏览器指纹,Canvas指纹、Webgl指纹、Audio指纹修改方法?

如何修改浏览器指纹,Canvas指纹、Webgl指纹、Audio指纹修改方法?

修改浏览指纹的方法其实也是很简单,主要使用到......