Python基础知识之数组(列表、元组、集合、字典)
在Python编程中,数组的概念并不单一,实际上Python提供了几种不同类型的数据结构,以便于存储和操作数据。这些数据结构包括列表(list)、元组(tuple)、集合(set)和字典(dict)。下面将逐一介绍这几种数据结构的特点、用法及示例代码。
1. 列表(List)
列表是Python最常用的数据结构之一,它是一个可变的有序集合,可以存储任意类型的对象。列表中的元素可以通过索引访问,索引从0开始。
特点: - 有序:元素按添加顺序排列。 - 可变:可以动态改变元素的数量和内容。 - 可以包含不同类型的数据。
示例代码:
# 创建一个列表
fruits = ["apple", "banana", "cherry"]
print(fruits) # 输出: ['apple', 'banana', 'cherry']
# 向列表添加元素
fruits.append("orange")
print(fruits) # 输出: ['apple', 'banana', 'cherry', 'orange']
# 访问元素
print(fruits[1]) # 输出: banana
# 删除元素
fruits.remove("banana")
print(fruits) # 输出: ['apple', 'cherry', 'orange']
2. 元组(Tuple)
元组与列表相似,也是一个有序的集合,但元组是不可变的,一旦创建便不能修改(不能增、删、改)。元组通常用于存储不希望更改的数据。
特点: - 有序:元素按添加顺序排列。 - 不可变:一旦创建,无法改变。 - 可以包含不同类型的数据。
示例代码:
# 创建一个元组
colors = ("red", "green", "blue")
print(colors) # 输出: ('red', 'green', 'blue')
# 访问元素
print(colors[0]) # 输出: red
# 尝试修改会引发错误
# colors[0] = "yellow" # TypeError: 'tuple' object does not support item assignment
3. 集合(Set)
集合是一个无序的、不重复的元素的集合。集合常用于需要保证元素唯一性的场景,例如去重。
特点: - 无序:元素没有特定的顺序。 - 元素唯一:不允许重复元素。 - 支持数学运算,如交集、并集等。
示例代码:
# 创建一个集合
my_set = {1, 2, 3, 4, 5}
print(my_set) # 输出: {1, 2, 3, 4, 5}
# 添加元素
my_set.add(6)
print(my_set) # 输出: {1, 2, 3, 4, 5, 6}
# 删除元素
my_set.remove(3)
print(my_set) # 输出: {1, 2, 4, 5, 6}
# 集合去重
list_with_duplicates = [1, 2, 2, 3, 4, 4]
unique_list = set(list_with_duplicates)
print(unique_list) # 输出: {1, 2, 3, 4}
4. 字典(Dictionary)
字典是一个无序的键值对集合,采用键(key)—值(value)的形式存储数据。字典的键必须是唯一且不可变的类型,而值可以是任意类型。
特点: - 无序:键值对没有固定的顺序。 - 可变:可以动态增加、修改、删除键值对。 - 键唯一。
示例代码:
# 创建一个字典
person = {
"name": "Alice",
"age": 30,
"city": "New York"
}
print(person) # 输出: {'name': 'Alice', 'age': 30, 'city': 'New York'}
# 访问值
print(person["name"]) # 输出: Alice
# 修改值
person["age"] = 31
print(person) # 输出: {'name': 'Alice', 'age': 31, 'city': 'New York'}
# 添加新的键值对
person["job"] = "Engineer"
print(person) # 输出: {'name': 'Alice', 'age': 31, 'city': 'New York', 'job': 'Engineer'}
# 删除键值对
del person["city"]
print(person) # 输出: {'name': 'Alice', 'age': 31, 'job': 'Engineer'}
总结
通过上述介绍,我们了解了Python中的四种常见数据结构:列表、元组、集合和字典。它们各有特点,适用于不同的场景。掌握这些数据结构,将大大提高我们编写Python程序的能力。