首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

python传参是传值还是传引用

在此之前先来看看变量和对象的关系:Python 中一切皆为对象,数字是对象,列表是对象,函数也是对象,任何东西都是对象。而变量是对象的一个引用(又称为名字或者标签),对象的操作都是通过引用来完成的。...因此,如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过“传引用”来传递对象 例2 def test2(p): p = "i in test2" print(p,...因此,如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,就不能直接修改原始对象--相当于通过“传值'来传递对象。 总结: Python参数传递采用的肯定是“传对象引用”的方式。...这种方式相当于传值和传引用的一种综合。如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过“传引用”来传递对象。...如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,就不能直接修改原始对象--相当于通过“传值'来传递对象。

3.6K150
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python 函数的传参

    函数的传参 必传参数 函数中定义的参数没有默认值,在调用函数时如果不传入则报错 在定义函数的时候,参数后边没有等号与默认值 错误:def add (a=1, b=1) x 在定义函数的时候,没有默认值且必须在函数执行的时候传递进去的参数...必传参数 默认参数 可变元组参数 ?...# 如果赋值的形式传参,则需要将可变的元组类型放在第一位 可变字典参数 函数的参数传递非常灵活 必传参数与默认参数的传参多样化 函数体内不可加*号 代码 # coding:utf-8 def add(...print(args, len(args)) print(kwargs, len(kwargs)) test_args_supre(1, name='dewei') a = ('python...test(a, b=1, *args): print(a, b, args) s = (1, 2) test(1, 2, *s) # test(a=1, b=2, *s) # 如果赋值的形式传参

    1.2K20

    python中函数的序列传参,列表拆解传参、字典拆解传参

    ---- 本节教程视频 一、函数的列表传参 列表举例 [“a”,”b”,”c”] 其实在使用列表传参的时候比较简单,只需要将实际的列表作为参数传入到调用的函数中的时候,在列表变量前加上一个星号*即可把某个列表拆分成多个参数传入到自定义函数中...二、函数的字典传参 类似于列表拆解传参,只不过在传入的参数前面加上两个*,也即使说使用双星号** 举例: dic1={"name":"老刘","work":"程序员","微信公众号":"编程创造城市"}...三、知识总结: 函数的序列传参 1.列表的拆解传参,可以使用*,也可以省略,具体要看传入的参数的数量作为本质条件。...2.掌握字典的拆解传参,使用**,具体使用方法类似于列表 本节源代码 #对比可变参数与列表传参的区别 #可变参数的情况 # def P(*s1): # for v in s1: #...中函数的可变参数 python中函数关键字参数与默认值 python中lambda表达式与函数,函数传参、引用、作用范围、函数文档 python中函数概述,函数是什么,有什么用 python中字典中的赋值技巧

    10.8K21

    Python 总结函数传参的方式

    总结函数传参的方式 在函数中经常会用到参数来做一系列的业务处理,我们先来说说函数中的参数。...形参变量(所谓形参就是def声明函数名括号中的参数): 只有在被调用时才分配内存单元,调用结束时,即刻释放所分配的内存单元。因此,形参只在函数内部有效。...传参的方式: 第一种位置参数: 位置参数顾名思义,就是调用函数时传的实参与形参位置上一一对应的参数。...Chinese',country='UK') def send_alert(msg,*users): ''' :param msg: :param users: 表示非固定传参...请及时查看……',u,msg) send_alert('你的系统已频临崩溃','AA','BB','CC') 非固定传参方式二: 可同时指定多个用户,传过来的所有参数打包成元组或字典; def

    83230

    vue3 路由传参_vue router传参

    前言 vue 路由传参的使用场景一般都是应用在父路由跳转到子路由时,携带参数跳转。...传参方式可划分为 params 传参和 query 传参,而 params 传参又可分为在 url 中显示参数和不显示参数两种方式,这就是vue路由传参的三种方式。...方式一:params 传参(显示参数) params 传参(显示参数)又可分为 声明式 和 编程式 两种方式 1、声明式 router-link 该方式是通过 router-link 组件的 to...$route.params.id 方式二:params 传参(不显示参数) params 传参(不显示参数)也可分为 声明式 和 编程式 两种方式,与方式一不同的是,这里是通过路由的别名 name 进行传值的...$route.params.id 注意:上述这种利用 params 不显示 url 传参的方式会导致在刷新页面的时候,传递的值会丢失 方式三:query 传参(显示参数) query 传参(显示参数)也可分为

    6K20
    领券