做卖车网站需要什么手续,手机网站要备案吗,企业网站设计网,会员注册网站怎么做函数基础 函数简介 定义#xff1a;就是具有特定功能的一段代码优点#xff1a; 解决代码的重复书写可以将功能的实现着和使用者分开#xff0c;提高开发效率分类#xff1a; 库函数#xff1a;print、input、abs等自定义#xff1a;用户自己封装的函数函数使用 定义函数…函数基础 函数简介 定义就是具有特定功能的一段代码优点 解决代码的重复书写可以将功能的实现着和使用者分开提高开发效率分类 库函数print、input、abs等自定义用户自己封装的函数函数使用 定义函数格式 def 函数名([参数列表]):函数体 []表示可选参数可以有也可以没有也可以是多个。 函数名 与变量一样只要遵循标识符的命名规范即可。 函数调用 函数定以后不会执行需要调用才会执行调用格式函数名([参数])函数分类(参数与返回值) # 无参无返回值
def print_hello():for i in range(10):print(Hello world!)# print_hello()
# 带参数无返回值
def print_n_hello(n):for i in range(n):print(Hello world!) # print_n_hello(5)# 带参有返回值
def add(m, n):c m n# 使用return返回需要返回的值不返回默认为Nonereturn c print(add(3, 5)) 分类的标准是按照有无参数以及有无返回值。 函数参数 形参形式参数就是写在函数定义出的参数 实参实际参数就是在函数调用时传递的参数 位置参数也叫必传参数没有默认值的参数 默认参数定义时有默认值调用时可以不传必须写在最后 关键字参数在函数调用时指定参数名字参数的位置就无所谓。 可变长度参数函数调用时可以传递比定义处更多的参数多出来的参数会保存在args和kwargs中 def var_len_args(a, b, namegoudan, *args, **kwargs):print(a, b)print(name)# 是一个元组保存多传的位置参数print(args)# 是一个字典保存多传的关键字参数print(kwargs)var_len_args(1, 2, 3, 4, age10) *的使用 def show(a, b):print(a, b)lt [1, 2]
# 需要从列表根据下表获取元素然后作为参数传递
# show(lt[0], lt[1])
show(*lt)def show2(aa11, bb22):print(aa, bb)d {aa: 123, bb: 456}
# show2(aad[aa], bbd[bb])
# 上下等价
show2(**d) 函数进阶 函数的定义位置是随意的 不是一定是先定义后调用函数的调用一定要放在定义之后。函数的名字可以相同吗 不可以若出现同名函数后者会覆盖前者。函数内容能否再定义函数 可以定义在函数内部的函数叫内部函数它是很多高级功能实现的基础。变量的作用域 块级作用域 if True:name guanyu# 能够在块的外部使用说明没有块级作用域
print(name) 局部作用域 局部变量定义在函数内部的变量叫局部变量只能在函数内部使用。 def test():a 10# 不能再函数外部使用此处会报错
print(a) 全局作用域 全局变量定义在函数外部的变量叫全局变量哪里都可以使用 num 10def show():# 声明使用的时外部的同名变量global num# 只能使用不能修改若想修改协议进行全局声明num 20print(num)show()
print(num) 函数内部可以使用外部变量但是不能修改若修改需要使用global进行全局声明当函数内部与外部出现同名变量默认使用的时内部变量 nonlocal使用 说明内部函数使用外部函数的局部变量需要使用nonlocal进行声明 def wai():n 10def nei():# 声明使用非本地变量外部函数的局部变量nonlocal nn 20print(n)nei()print(n)wai() 递归函数(了解) 定义函数内部调用函数本身的函数叫递归函数。组成 函数内部调用自己终止条件(停止调用自己的条件)核心算法(具体功能)特点 代码简洁可读性差(不易理解)瞬间占用内存较大没有终止条件立即崩溃有些领域是禁止使用的(安全领域汽车电子)只有在不得不使用的时候才使用(遍历目录)练习可以做个小练习来巩固 求n的阶乘斐波那契数列的第n项 前两项都为1从第三项开始每一项都等于前两项的和如 1,1,2,3,5,8,13,21,... 常用函数 内置函数(无需导入) print打印输出
input输入
abs求绝对值
type获取变量的类型
chr将ASCII数值转换为字符
ord将字符转换为对应的ASCII
id获取变量地址
len统计元素个数
range产生连续整数的可迭代对象
enumerate枚举可迭代对象强制类型转换
int
float
str
list
tuple
set
dictmax求多个参数的最大值或可迭代对象中的最大元素
min最小值
sum求和可迭代对象元素求和
pow求幂pow(2, 3)等价于2 ** 3
round四舍五入可以指定保留位数hex16进制
oct8进制
bin2进制 模块函数(需要导入) timesleep休眠指定的秒数可以是小数
mathe自然对数pi圆周率ceil向上取整floor向下取整sqrt开方(请平方根)degrees弧度转换为度radians度转换为弧度
sysargv运行程序时所有的命令行参数列表第一个是程序文件名练习完成一个计算器支持加、减、乘、除运算 转载于:https://www.cnblogs.com/swjblog/p/9671007.html