当前位置:首页>python>小白学python第52天之Python拆包(元组和字典)

小白学python第52天之Python拆包(元组和字典)

  • 2026-09-08 22:20:50
小白学python第52天之Python拆包(元组和字典)

1.28

Python拆包(元组和字典)

?

学前疑问

当元组跟字典遇上了函数,我们将如何将它们拆包呢?

1

Python拆包(元组和字典)

(1)什么是拆包

Python拆包:就是把元组或字典中的数据单独的拆分出来,然后赋予给其他的变量。

拆包: 对于函数中的多个返回数据,去掉元组、列表或者字典直接获取里面数据的过程。

(2)元组的拆包过程

def func():    # 经过一系列操作返回一个元组    return 100, 200  # tuple元组类型的数据# 定义两个变量接收元组中的每个数组(拆包)num1, num2 = func()# 打印num1和num2print(num1)print(num2)

(3)字典的拆包过程

记住:字典拆包,只能把每个元素的key拆出来

dict1 = {'name':'小明', 'age':18}# 拆包的过程(字典)a, b = dict1print(a)print(b)# 获取字典中的数据print(dict1[a])print(dict1[b])

(4)拆包的应用案例

案例1:使用至少3种方式交换两个变量的值

第一种方式:引入一个临时变量

c1 = 10c2 = 2# 引入临时变量temptemp = c2c2 = c1c1 = tempprint(c1, c2)

第二种方式:使用加法与减法运算交换两个变量的值(不需要引入临时变量)

c1 = 10c2 = 2c1 = c1 + c2c2 = c1 - c2c1 = c1 - c2print(c1, c2)

第三种方法:只有Python才具有的特性,叫做拆包。

c1 = 10c2 = 2c1, c2 = c2, c1

原理:

第一步:把c2和c1组成一个元组(c2, c1);

第二步:使用拆包特性,把元组中的两个元素分别赋值给c1和c2。

案例2:Python中数据的传递案例

def func(*args, **kwargs):print(args)print(kwargs)# 定义一个元组(也可以是列表)tuple1 = (10, 20, 30)# 定义一个字典dict1 = {'first': 40, 'second': 50, 'third': 60}# 需求:把元组传递给*args参数,字典传递给**kwargs# ① 如果想把元组传递给*args,必须在tuple1的前面加一个*号# ② 如果想把字典传递给**kwargs,必须在dict1的前面加两个**号func(*tuple1, **dict1)

今日学习完毕,课后作业:

请你编写一个Python程序,实现以下功能:

① 定义一个函数show_student_detail(),该函数接收三个参数:name(姓名)、age(年龄)和hobby(爱好);

② 函数功能是打印学生信息,格式为:"{name}今年{age}岁,喜欢{hobby}。";

③创建一个字典student_dict,包含三个键值对,键分别为'name'、'age'和'hobby';

④ 使用字典拆包(**操作符)将字典中的键值对作为参数传递给show_student_detail()函数。

最新文章

随机文章