目录
1.自定义函数
def attack(): # 定义函数(做功能),使用功能的话要调用
print("摆拳")
print("直拳")
print("肘击")
print()
# 调用函数
attack()
attack()
attack()
def attack(): # 定义函数(做功能),使用功能的话要调用
print("摆拳")
print("直拳")
print("肘击")
print()
def attack_repeated(count): # 形式参数
for i in range(count): # 次数不能写死了
print("摆拳")
print("直拳")
print("肘击")
print("临门一脚")
print()
attack_repeated(2) # 调用函数的时候(2)是实际参数
1.1Pycharm相关设置
-
F8 -->逐过程调试(调试时跳过方法);F7 -->逐语句调试(调试时进入方法)
-
“代码自动完成”时间延时设置
File -> Setting->Editor->General->Code com
-
快捷键:
Ctrl + P:参数信息(在方法中调用参数)
Ctrl + Q:快速查看文档
Ctrl + Akt + M:提取方法
1.2定义
-
函数用于封装一个特定的功能,表示一个功能或者行为。
-
函数是可以重复执行的语句块,可以重复调用。
-
注意:自定义函数的调试快捷键是F7(逐语句),其中F8是逐过程。
函数内存图
# 在方法区中存储函数代码,不执行函数体
def fun01(a):
a = 100
num01 = 1
fun01(num01) # 因为调用函数,所以开辟一块内存图,叫做栈帧,由于存储在函数内部定义的变量
# 函数执行完毕后,栈帧立即释放(其中定义的变量也会销毁)
print(num01) # 1
def fun02(a):
a[0] = 100
# 改变的是传入的可变对象
list01 = [1]
fun02(list01)
print(list01[0])
def fun03(a):
a = 100
# 改变的是fun03栈帧中变量a的指向
list01 = [1]
fun03(list01)
print(list01[0]) # 1
def fun04(a):
a[1] = [200]
b = 10
list01 = [1, [2,