zoukankan      html  css  js  c++  java
  • python值传递和指针传递

    a= 1
    def change_integer(a):
            a=a+1
            return a

    print change_integer(a)
    print a

    b= [1, 2, 3]

    def change_list(b):
            b[0]= b[0]+1
            return b

    print change_list(b)
    print b



    第一个例子,我们将一个整数变量传递给函数,函数对它进行操作,但原整数变量a不发生变化。

    第二个例子,我们将一个表传递给函数,函数进行操作,原来的表b发生变化。

    对于基本数据类型的变量,变量传递给函数后,函数会在内存中复制一个新的变量,从而不影响原来的变量。(我们称此为值传递)

    但是对于表来说,表传递给函数的是一个指针,指针指向序列在内存中的位置,在函数中对表的操作将在原有内存中进行,从而影响原有变量。 (我们称此为指针传递)



    def function_name(a,b,c):
        statement
        return something # return不是必须的

    函数的目的: 提高程序的重复可用性。
    通过位置,传递参数。

    基本数据类型的参数:值传递

    列表、元组、字典作为参数:指针传递

  • 相关阅读:
    在centos6.5上搭建elk6.5.3
    mysql 表信息查询
    pychram远程调试
    老程序员的十条告诫
    看清程序员要走的道路
    一个程序员的十年总结
    一个资深程序员成功的背后
    weisheng.cf 网站更新动态
    Endless Night 题解
    2021.1.17高一模拟赛题解
  • 原文地址:https://www.cnblogs.com/linkenpark/p/7484041.html
Copyright © 2011-2022 走看看