`

Python中的值传递问题

阅读更多

python的官方网站上有一句话,“python把程序中用到的任何东西都成为对象 ”

例如:你定义了一个a=1 那么就是把1这个number对象赋值给了a对象,而此时的a对象是1对象的引用也是number对象了。

这里我们可以看出来,python只是把对象的引用传递给了对象a,而不是赋值操作,

例如:

mylist=[1,2,3]

youlist=mylist

youlist[0]=5

  1. mylist = [1,2,3]
  2. anotherlist = mylist
  3. print mylist,anotherlist

  1. mylist = [1,2,3]
  2. anotherlist = mylist
  3. print mylist,anotherlist
那么mylist等于多少?

结果是mylist=[5,2,3]

 

因为这个例子中mylist是指向对象[1,2,3]的对象的引用,所以更改他也相当于更改youlist,并不是真正的赋值,只是引用。切忌。

分享到:
评论

相关推荐

    深入理解python中函数传递参数是值传递还是引用传递

    如果函数收到的是一个可变对象(比如字典 或者列表)的引用,就能修改对象的原始值——相当于通过“传引用”来传递对象。如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,就不能 直接修改原始对象...

    Python中 传递值 和 传递引用 的区别解析

    在值传递中,函数接收的是原始数据的一个副本,对这个副本的任何修改都不会影响到原始数据。而在引用传递中,函数接收的则是数据的引用地址,通过这个地址可以对原始数据进行修改。 在Python中,所有的变量都是通过...

    向python脚本传递参数(例子)

    ### 向Python脚本传递参数知识点详解 在Python编程中,能够从命令行接收参数是一项非常实用的功能。本文将深入探讨如何使用`sys.argv`来接收命令行参数,并通过一个具体的示例——过滤文本文件中的特定关键字——来...

    python——值传递与引用传递

    #值传递和引用传递 python中数据类型有:整形,字条串,元组,列表,字典,集合 不可变数据类型:当该数据类型对应变量的值变化,值对应的内存地址 也发生变化,这个值就为不可变数据类型 可变数据类型:当该数据...

    Python函数中参数是传递值还是引用详解

    基于以上分析,我们可以得出结论:Python中的参数传递既不是纯粹的“值传递”,也不是纯粹的“引用传递”。如果非要用一个术语来描述Python中的参数传递机制,那应该是**按对象传递**(Call by Object)。 - 对于不...

    python Qt5GUI界面主窗口和子窗口相互传值,保证能用

    通过以上方法,我们可以轻松地在Python Qt5 GUI中实现主窗口和子窗口之间的数据传递。理解并熟练运用这些技巧,将有助于构建更加交互性和功能丰富的应用程序。在实际开发中,应根据需求选择合适的方式,并注意保持...

    Python 中的参数传递、返回值、浅拷贝、深拷贝

    Python的参数传递,无法控制引用传递还是值传递。对于不可变对象(数字、字符、元组等)的参数,更类似值传递;对于可变对象(列表、字典等),更类似引用传递。 def fun1(n): print(n) # n在没修改前,指向的地址...

    python中factor函数-Python基础教程.pdf

    在Python编程语言中,`factor`函数通常是指用于因式分解整数的函数,但这在提供的文本中并未直接介绍。然而,我们可以从描述和部分内容中提取出几个关键知识点: 1. **参数收集与解包**: - Python允许在函数定义...

    值传递与引用传递-内存解析

    在值传递中,当一个变量作为参数传递给函数时,函数接收到的是该变量当前值的一个副本。这意味着在函数内部对参数的任何修改都不会影响到函数外部的原始变量。例如,在C++或Java中,如果一个整型变量`a`被传递给一个...

    Python安装文件 Python 3.8

    2. **位置只有参数(Positional-only arguments)**: 在Python 3.8中,函数可以接受位置只有参数,这意味着这些参数不能通过关键字传递,只能按位置顺序传递。这样可以更清晰地定义函数接口,避免参数混淆。 3. **...

    2021python最新面试题锦囊问题汇总.zip

    - 函数的定义、调用方式,以及参数传递机制(按值传递还是按引用传递)。 * 了解内置函数,如`len()`、`range()`、`zip()`等的用法。 - 模块的概念,如何导入和使用外部模块,以及`import`和`from...import`的...

    第六章Python函数习题及答案--中文

    Python 函数习题及答案 -- 中文 本章节主要讲解了 Python ...本章节讲解了 Python 函数的基本概念和应用,包括函数的定义、函数的调用、函数的参数、函数的返回值等,同时也探讨了变量的范围和按值传递参数等问题。

    Python3.7.2中文文档-Python教程-合集

    4. **函数**:Python中的函数是代码的可重用部分,可以定义自己的函数,包括参数传递、默认参数值、*args和**kwargs等特性。 5. **模块与包**:Python有丰富的标准库,如os、sys、math等,通过import语句可以导入并...

    基于遗传算法和Python多处理器并行计算的二阶热传导方程初边值问题数值解法.pdf

    本文献主要讨论了如何使用遗传算法结合Python的多处理器并行计算技术来求解二阶热传导方程初边值问题的数值解法。下面将详细介绍本文献涉及的几个关键知识点。 首先,二阶热传导方程是一类偏微分方程,它是热力学中...

    python 引用传递和值传递详解(实参,形参)

    对于不可变类型,如整型(int)、浮点型(float)、字符串(str)和元组(tuple),Python表现出类似值传递的行为。当这些类型的对象作为参数传递给函数时,函数内部创建了这些对象的一个副本。任何在函数内部对...

    Python34中文手册(官方文档).docx

    - **参数传递**:可以通过命令行传递参数给Python解释器,例如`python3.4 script.py arg1 arg2`。 #### 三、交互模式 - **简介**:Python解释器提供了一个交互式环境,允许用户直接输入代码并立即看到结果。 - **...

    C语言中文网Python教程

    send()方法允许向生成器发送值,close()停止生成器并抛出GeneratorExit异常,throw()用于在生成器中引发异常。 “7.3Python函数参数传递机制(超级详细).html”详细解释了Python的参数传递方式,Python采用“引用...

Global site tag (gtag.js) - Google Analytics