欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python 的值传递和引用传递

程序员文章站 2022-05-01 18:25:09
python 的值传递和引用传递 虽然学习python不需要理解值传递和引用传递的概念,但是对于第一门语言为c语言的人来说,不搞清楚,总感觉别扭. 数值型数据 def t...

python 的值传递和引用传递

虽然学习python不需要理解值传递和引用传递的概念,但是对于第一门语言为c语言的人来说,不搞清楚,总感觉别扭.

数值型数据

def test(a):
    a = 2
a = 3
test(a)
print "test:%d"%a
# 输出为test:3,可以看出对于数值型,是值传递

字符串数据

def test(a):
    a = "hi"
a = "hello"
test(a)
print "test:%s"%a
#输出 test:hello, 对于字符串来说,相当与值传递

数组数据

def test(a):
    a[0] = 2
a = [3]
test(a)
print "test:%d"%a[0]
#输出test:2, 对于数组,相当与引用传递

对象

class Peo(object):
    def __init__(self):
        self.name = "keith"
def test(a):
    a.name = "hi"
a = Peo()
test(a)
print "test:%s"%a.name
#输出 test:hi ,可以看出,对于对象,也是引用传递