首页 > 代码库 > Python 随便 2days

Python 随便 2days

 if以四个空格的缩进来表示隶属关系, Python中不能随意缩进

函数调用和参数传递

定义过函数后,就可以在后面程序中使用这一函数

print square_sum(3,4)

Python通过位置,知道3对应的是函数定义中的第一个参数a, 4对应第二个参数b,然后把参数传递给函数square_sum。

(Python有丰富的参数传递方式,还有关键字传递、表传递、字典传递等,基础教程将只涉及位置传递)

函数经过运算,返回值25, 这个25被print打印出来。

 

我们再看下面两个例子

按 Ctrl+C 复制代码
按 Ctrl+C 复制代码

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

第二个例子,我们将一个表传递给函数,函数进行操作,原来的表b发生变化。//不能用b(1,2,3)

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

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

 

a = 1

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

print (change_integer(a))
print (a)

///////

a = 88

def ll(b):
b= a+1 //这里的b不能改成a 除非def ll(b)改为def ll(a) 这个时候a=6
print(a)
print (a)
def kkkk():
d = b+1 //这里的a是88 但def ll(a)可以控制////可以引用,但不可以改变初始变量的值,b = b+1 是错误的
print (d)
kkkk()
print (ll(6))

Python 随便 2days