python 09 函数
函数:减少代码冗余,提升程序结构清晰化
函数的定义与调用
格式:
def 函数名([参数列表]):
【"""文档字符串"""】
函数体
【return 语句】
函数的调用:函数名([ 参数列表 ]) eg:print_a(3)
# 打印正方形的函数
def print_a(len):
"""
:param len: # param 参数
:return: # return 返回值
"""
for i in range(len):
for i in range(len):
print('*',end=' ')
print()
# 调用函数
print_a(2)
print_a(4)
print_a(8)
参数的打包和解包:
打包:形参前加'*'or'**' 分别以元组和字典形式接收值
解包:使用'*'or'**' 将字典拆分成多个键值对
# case1:打包
def text(*args):
print(args)
text(1, 2, 4, 5, 6, 7)
def text2(**kwargs):
print(kwargs)
text2(a=1, b=2, c=3, d=4)
# case2:解包
def text(a, b, c, d):
print(a, b, c, d)
nums = (1, 2, 3, 4)
text(*nums) # 1 2 3 4
nums2 = {'a': 11, 'b': 22, 'c': 33, 'd': 44}
text(**nums2) # 11 22 33 44
global 和 nonlocal 关键字:
global关键字:可将局部变量声明为全局变量
nonlocal关键字:可在局部变量中修改嵌套作用域中声明的变量
# global关键字
number = 10 # 定义全局变量
def text_one():
global number
# 使用global声明变量number为全局变量
# 使用global关键字后可在函数中修改全局变量
number += 1
print(number)
text_one()
print(number)
# nonlocal关键字
def text():
number = 100
def text_one():
nonlocal number
# 可在局部变量中修改嵌套作用域中声明的变量
number = 200
text_one()
print(number)
text()

浙公网安备 33010602011771号