当前位置: 代码迷 >> 综合 >> Python基础知识学习05:
  详细解决方案

Python基础知识学习05:

热度:41   发布时间:2024-02-23 00:30:35.0

1、知识回顾

局部变量与全局变量的介绍前文已作详细介绍,这里我们简单描述即可。

局部变量:定义在函数体内部的变?,它只在函数体内部生效。如果在函数外部访问则会立即报错。
全局变量:指的是在函数体内、外都能生效的变量。如需在函数体内部修改全局变量,先global 关键字声明a是全局变?,再进行赋值即可。

2、多函数程序执?流程 

2.1 共用全局变量

步骤:1、定义全局变量 ;

           2、定义两个函数 ;

           3、函数一修改全局变量(注意:需先global 关键字声明全局变?,再作修改);函数二访问全局变量。

代码实例:

# 1、声明全局变量  2、定义两个函数  3、函数一修改全局变量;函数二访问全局变量# 1. 定义全局变?
glo_num = 0
def test1():"""函数1修改全局变量"""global glo_numglo_num = 100def test2():"""函数2去调用test1函数中修改后的全局变量"""print(glo_num)  # 100,因为是调用了test1的结果print(glo_num)  # 0因为修改的变量没执行# 2. 调用test1函数,执?函数内部代码:声明和修改全局变?
test1()
# 3. 调用test2函数,执?函数内部代码:打印
test2()

2.2 返回值作为参数

步骤:1.定义两个函数:函数一、函数二;

           2.先得到参数一的返回值9;

           3.将函数一的返回值作为参数传入函数二(函数二有形参)。

代码实例:

def test1():return 9
def test2(num):print(num)
# 1. 保存函数test1的返回值
result = test1()
# 2.将函数返回值所在变量?作为参数传递到test2函数
test2(result)  # 9

3、return多个返回值

在之前的学习中已知return的作用是:

① 负责函数返回值;

② 退出当前函数,导致return下方(函数体内部)的所有代码不执行。

若一个函数需要return返回多个值时需注意:

 ① 可以以  return a, b  的写法返回多个数据,默认是元组类型。

② return后面可以连接?表、元组或字典,以返回多个值。

def return_num():# return 1, 2  # 默认是元组类型
# return后面可以直接书写:元组、列表、字典,以此来返回多个值# return [1, 2]  # [1, 2],列表类型return {'name': 'lisa', 'age': 18}  # {'name': 'lisa', 'age': 18},字典类型
result = return_num()
print(result)

4、函数的参数的其他写法

4.1 位置参数写法

位置参数:调用函数时根据函数定义的参数位置来传递的参数。

值得注意的是:传递和定义参数的顺序及个数必须一致,即:调用函数时传入的实参顺序与个数必须与定义时的形参一致。如果当传入个数和定义不一致会报错;当顺序和定义不一致时会导致数据无意义。

4.2 关键字参数

关键字参数:调用参数时通过“键=值”形式加以指定。可以让函数?加清晰、容易使用,同时也清除?参数的顺序需求。

注意:函数调用如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间?存在先后顺序。
 

# 关键字参数
def user_info(name, age, gender):print(f'您的名字是{name}, ?龄是{age}, 性别是{gender}')user_info('Lisa', age=18, gender='女')
user_info('Tom', gender='男', age=20)  # 关键字之间不分先后顺序
# user_info(gender='男', age=20, 'Tom')  位置参数必须写在关键字的前面,否则会报错

4.3 缺省参数

缺省参数:也叫默认参数,用于定义函数,为参数提供默认值,调用函数时可?传该默认参数的值(注意:所有位置参数必须出现在默认参数前,包括函数定义和调用)。

注意:函数调用时,如果为缺省参数传值则修改默认参数值;否则使用这个默认值。

# 缺省参数
def user_info(name, age, gender='男'):print(f'您的名字是{name}, ?龄是{age}, 性别是{gender}')
user_info('TOM', 20)  # 没有为缺省参数传值,使用默认值“男”
user_info('Lisa', 18, '?')  # 为缺省参数传值,使用这个值,即修改了默认值

4.4 不定长参数

 

 

 

 

 

 

 

 

 

 

 


 

 

  相关解决方案