面试题答案
一键面试-
定义只有一个元素的元组: 在Python中,定义只有一个元素的元组时,需要在元素后面加上逗号,例如:
single_element_tuple = (1,) print(type(single_element_tuple)) # <class 'tuple'>
如果写成
single_element_tuple = (1)
,这实际上定义的是一个整数1
,而不是元组,因为括号在这里只是起到改变运算优先级的作用。 -
元组不可变特性的应用场景:
- 函数参数传递:
- 数据保护:当函数接受元组作为参数时,可以确保函数内部不会意外修改传入的数据。例如:
这里def print_coordinates(coords): print(f"X: {coords[0]}, Y: {coords[1]}") point = (3, 5) print_coordinates(point)
point
元组传递给print_coordinates
函数,函数只能读取元组内容,无法修改,保护了数据的完整性。
- 数据保护:当函数接受元组作为参数时,可以确保函数内部不会意外修改传入的数据。例如:
- 数据存储:
- 配置信息存储:例如存储数据库连接配置信息,这些信息在程序运行过程中通常不需要改变,使用元组存储可以防止意外修改。
db_config = ('localhost', 3306, 'user', 'password')
- 作为字典的键:由于元组不可变,所以可以作为字典的键,而列表等可变类型不能作为字典键。例如:
location_dict = {} location = (10.0, 20.0) location_dict[location] = 'Some place'
- 配置信息存储:例如存储数据库连接配置信息,这些信息在程序运行过程中通常不需要改变,使用元组存储可以防止意外修改。
- 函数参数传递: