python学习记录10---------------函数

函数:

def 函数名(变量名1,变量2.。。):

  函数体

在 python 中,类型属于对象,变量是没有类型的:

a=[1,2,3] a="Runoob"
[1,2,3]是列表类型,
"Runoob"是字符串string类型。a是变量,没有类型,它只是一个对象的引用,可以指向list类型,也可以指向string类型

---------------------------------------------函数的注意点--------------------------

a=1 #a指向1

a=2#当a再次赋值2时,a指向2所在的内存。

python中,函数的参数传递性:

1、不可变类型:整型、字符串、元组;当这类参数作为函数的参数传值时,是将变量的指向传递给参数,不会影响变量本身,如下例,当b=1传给fuzhi(b)时,并不会改变b的值

def fuzhi(a):

  a=2

扫描二维码关注公众号,回复: 7446552 查看本文章

b=1

fuzhi(b);print(b)#还是打印1

2、可变类型:类似 c++ 的引用传递,如 列表,字典。如myappend(l),则是将 l指向的值真正的传过去,修改后myappend外部的l也会受影响

def myappend(List):
List.append([3,4])
print("函数内改变List值:",List)
l = [1,2]
myappend(l) #函数内改变List值: [1, 2, [3, 4]]
print("函数外改变l值:",l) #函数外改变l值: [1, 2, [3, 4]]


猜你喜欢

转载自www.cnblogs.com/fangxiaosheng/p/11650394.html