day18 函数定义参数;名称空间;全局变量及局部变量。
Posted 何必从头
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day18 函数定义参数;名称空间;全局变量及局部变量。相关的知识,希望对你有一定的参考价值。
Python之路,Day6 = Python基础6
函数的定义
def func1(): # 定义一个函数,名字叫func1,括号中没有传入参数 print(‘hello word‘) # 这里是 func1 的内容,可以定义为任意代码 return 1 # return 是返回的意思,后面是返回值,调用时可以用参数接收,返回值的内容可以为任意形式 # python执行的时候只会检查函数里面是否有语法问题,没有的话,过。。。 # 函数中可以有多个return, 但是执行到return时,函数停止执行,并返回结果,也就是说,每个函数只会有一个返回值 # 每个函数都有返回值,如果不写,默认为 None 。
函数的参数
# 第一种情况 def func1(x, y, z): # 这个函数需要你在使用它的时候传入三个参数 print(x, y, z) func1(1,2,3) # 这种调用时传入的参数需要与上面值为一一对应。 结果:1, 2, 3 func1(z = 3, y = 2, x = 1) # 这种调用方式已经指定了各个参数分别对应给谁,所以可以不必一一对应位置。 结果:1, 2, 3 # 第二种情况 def func2(x=1, y=2, z=3): # 这个函数在你使用的时候,不是必需传入参数,如果不传入参数的话,那么默认为后面所赋值的内容。 print(x, y, z) func2() 结果:1, 2, 3 func2(5, 6, 7) 结果:5, 6, 7 # 第三种情况 def func2(x,y,z=3): # 两种方式可以合并使用,但是由默认赋值的参数,必需放在最后 pass # 第四种情况 def func3(*args): # 当我们不知道需要传入多少个参数(1,2,3,4,5)的时候,可以一用 *args 作为参数,这个意思是,把所有的传入的值(所有只传值)作为一个元组保存在 args 中; pass # 第五种情况 def func3(**args): # 当我们不知道需要传入多少个参数(x=1,y=2)的时候,可以一用 **kwargs 作为参数,这个意思是,把所有的传入的值(所有只传值)作为一个字典保存在 **kwargs 中; pass
名称空间
内置名称空间
系统自带:如,系统定义好的变量名、函数名、类名等。
全局名称空间
自定义的全局的:如,自定义好的变量名、函数名、类名等但他们所定义的位置不应该属于其他的类或方法中。
局部名称空间
自定义的局部的:如,自定义好的变量名、函数名、类名
注:三者的加载顺序,内置名称空间、全局名称空间、局部名称空间
全局变量及局部变量
全局变量:内置名称 + 全局名称
作用域:作用与整个文件
局部变量:局部名称
作用域:作用与当前的位置(类或方法等)及包含的子程序(位置或方法等)
以上是关于day18 函数定义参数;名称空间;全局变量及局部变量。的主要内容,如果未能解决你的问题,请参考以下文章