Python 结构化一维序列有多种使用方法,包括列表、元组和数组。以下是针对这三种结构化一维序列的完整攻略。
列表
列表是Python中最常用的数据类型之一,用于存储一组有序数据,可以包括数字、字符串、布尔值等等。列表中的数据可以是任意类型的对象,并且支持动态添加和删除元素。
基本操作
以下是常见的列表操作:
创建列表
可以使用一对方括号来创建一个空的列表,也可以在方括号中添加初始元素:
empty_list = []
num_list = [1, 2, 3, 4, 5]
str_list = ['apple', 'banana', 'pear']
mixed_list = [1, 'apple', True, 3.14]
访问列表元素
可以使用索引来访问列表中的元素,索引从0开始。也可以使用负数索引,表示从后往前数(-1表示最后一个元素)。
num_list[0] # 1
num_list[-1] # 5
切片操作
可以使用切片操作来访问列表中的一段元素:
num_list[1:3] # [2, 3]
num_list[:3] # [1, 2, 3]
num_list[2:] # [3, 4, 5]
添加和删除元素
可以使用append
方法在列表尾部添加元素,使用del
语句或pop
方法删除元素:
num_list.append(6)
del num_list[0]
num_list.pop()
示例
以下是一个简单的示例,演示如何使用列表来统计一句话中每个单词出现的次数:
sentence = "Hello world, hello Python"
words = sentence.split() # 按空格分割单词
count_dict = {}
for word in words:
if word in count_dict:
count_dict[word] += 1
else:
count_dict[word] = 1
print(count_dict)
# 输出:{'Hello': 1, 'world,': 1, 'hello': 1, 'Python': 1}
元组
元组是一种类似于列表的数据类型,但是元素不能修改。元组可以用于存储一组不可变的数据,比如坐标、RGB颜色等。
基本操作
以下是常见的元组操作:
创建元组
可以使用一对括号来创建一个元组,也可以省略括号:
empty_tuple = ()
two_element_tuple = (1, 2)
two_element_tuple = 1, 2
mixed_tuple = ('apple', 3.14, True)
访问元组元素
可以使用索引来访问元组中的元素,索引从0开始。也可以使用负数索引,表示从后往前数(-1表示最后一个元素)。
two_element_tuple[0] # 1
two_element_tuple[-1] # 2
示例
以下是一个简单的示例,演示如何使用元组来计算两个点之间的距离:
point1 = (1, 2)
point2 = (3, 4)
distance = ((point1[0] - point2[0]) ** 2 + (point1[1] - point2[1]) ** 2) ** 0.5
print(distance)
# 输出:2.8284271247461903
数组
数组是一种用于存储一组数值的数据类型,和列表不同,数组的元素类型必须相同(只能是数字、字符或者布尔值),并且数组支持向量化运算,可以大幅提高计算效率。
基本操作
以下是常见的数组操作:
导入numpy模块
数组通常使用numpy模块来实现,需要先导入该模块:
import numpy as np
创建数组
可以使用numpy的array
函数来创建数组:
empty_array = np.array([])
int_array = np.array([1, 2, 3, 4, 5])
float_array = np.array([1.1, 2.2, 3.3])
访问数组元素
可以使用索引来访问数组中的元素,索引从0开始。也可以使用负数索引,表示从后往前数(-1表示最后一个元素)。
int_array[0] # 1
int_array[-1] # 5
切片操作
和列表类似,可以使用切片操作来访问数组中的一段元素:
int_array[1:3] # [2, 3]
int_array[:3] # [1, 2, 3]
int_array[2:] # [3, 4, 5]
数组运算
一个数组可以和一个标量进行加、减、乘、除等运算,也可以和另一个数组进行对应位置的运算:
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = a + b # 对应位置相加,结果为 [5, 7, 9]
d = a * 2 # 数组乘以标量,结果为 [2, 4, 6]
示例
以下是一个简单的示例,演示如何使用数组来求解二元一次方程组:
a = np.array([[2, 1], [1, 1]])
b = np.array([3, 2])
x = np.linalg.solve(a, b)
print(x)
# 输出:[0.5 1.5]
以上就是针对Python结构化一维序列的分别的详细讲解。