函数

2020-09-10  本文已影响0人  小圆圈Belen

变量

python中的变量也分为全局变量和局部变量。

局部变量

全局变量

概念:既能在一个函数中使用,也能在其他的函数中使用的变量

全局变量和局部变量名称相同

当函数内出现局部变量和全局变量相同名字时,函数内部中的 变量名 = 数据 此时理解为定义了一个局部变量,而不是修改全局变量的值

修改全局变量

如果在函数中出现global 全局变量的名字 那么这个函数中即使出现和全局变量名相同的变量名 = 数据 也理解为对全局变量进行修改,而不是定义局部变量


返回值

1.一个return:执行到return,结束函数
2.多个return:只要执行到一个return,结束函数
3.return后面可以是元组,列表、字典等,只要是能够存储多个数据的类型,就可以一次性返回多个数据
4.如果return后面有多个数据,那么默认是元组

参数

缺省参数

在形参中默认有值的参数,称之为缺省参数。
调用函数时,缺省参数的值如果没有传入,则取默认值。
注意:带有默认值的参数一定要位于参数列表的最后面
例子:

def printinfo(name, age=35):
   # 打印任何传入的字符串
   print("name: %s" % name)
   print("age %d" % age)

# 调用printinfo函数
printinfo(name="miki")  # 在函数执行过程中 age去默认值35
printinfo(age=9 ,name="miki")

结果:
name: miki
age: 35
name: miki
age: 9

不定长参数

格式
def functionname([formal_args,] *args, **kwargs):
   """函数_文档字符串"""
   function_suite
   return [expression]

加了星号(*)的变量args会存放所有未命名的变量参数,args为元组

而加**的变量kwargs会存放命名参数,即形如key=value的参数, kwargs为字典.

缺省参数在*args后面

如果很多个值都是不定长参数,那么这种情况下,可以将缺省参数放到 args的后面, 但如果有kwargs的话,*kwargs必须是最后的

上一篇 下一篇

猜你喜欢

热点阅读