旅游电商网站有哪些,外贸平台推广,西安高端网页制作,宏大建设集团网站函数#xff1a; 概念#xff1a;函数是指将一组语句的集合通过一个名字#xff08;函数名#xff09;封装起来#xff0c;要想执行这个函数#xff0c;只需调用其函数名即可创建#xff1a; def函数名命名规范#xff1a; a. 必须以下划线或字母开头 b. 区分大小写 c.…函数 概念函数是指将一组语句的集合通过一个名字函数名封装起来要想执行这个函数只需调用其函数名即可创建 def函数名命名规范 a. 必须以下划线或字母开头 b. 区分大小写 c.不能是保留字参数形参和实参调用时传的参数是实参方法里写的接收的变量是形参必备参数 # nameage 是必备参数调用此函数时必须按顺序传入值。
def print_info(name, age): 关键字参数 # 调用函数时可以不按顺序传入参数但必须说明关键字
print_info(age17, namesu) 默认参数 # 声明参数时指定一个默认值sexfemale这样在调用该函数时如果不传参数值就会使用默认值。默认参数必须放在所有参数后面不包括不定长参数# 默认参数后面如果跟了不定长参数那么会先把第一个参数值给默认参数def print_info(name, age, sexfemale):passprint_info(lily, 18) # 指定默认性别为女
print_info(xiaoming, 18, male) #传入参数性别为男 不定长参数 # 不定长参数有两种一种是不会给传入的参数命名第二种是传入的参数有命名。 *args 放左边 **kwargs 放右边# 第一种
def add(*args): # 不定长参数一*args不会给传入的参数命名声明时不会命名print(args)sum 0for i in args: # args (1, 2, 3, 4, 5)元组类型sum iprint(sum)add(1, 2, 3, 4, 5)#第二种 **kwargs 来接收超出的命名参数是一个字典类型
def print_info(name, age, **kwargs):print(kwargs)print(name: %s % name)print(age is: %d% age)for i in kwargs:print(%s: %s % (i, kwargs[i]))print_info(lily, 18, sexfemale, locatebeijing,) 5. return 作用a. 结束函数 b.返回某个对象 如果函数没有 return会默认 return 一个 None 如果return 多个对象那么python 会帮我们把多个对象封装成一个元组返回 def test(a, b):return ab, a*bprint(test(1, 2)) (3, 2) 6. 定义域 built_in , global, enclosing, local 局部作用域如果要修改全局变量需要加 global global count global 关键字声明的变量必须在全局作用域上不能在嵌套作用域上。 当要修改嵌套作用域enclosing中的变量需要使用 nonlocal 关键字nonlocal count 变量查找顺序LEGB作用域局部外层作用域当前模块中的全局python内置作用域 只有模块、类及函数才能引入新作用域 对于一个变量内部作用域先声明就会覆盖外部变量不声明直接使用就会使用外部作用域的变量 内部作用域要修改外部作用域变量的值时全局变量要使用 global 关键字嵌套作用域变量要使用 nonlocal 关键字nonlocal 是 python3 新增的关键字有了这个关键字就能完美实现闭包了 7. 作用 a.减少重复代码 b. 方便修改便于扩展 c. 保持代码一致性 转载于:https://www.cnblogs.com/mlllily/p/10252715.html