今天,我们就通过12个有趣的示例,一步步揭开列表与索引的神秘面纱。
示例1:基础创建与索引
# 创建列表
my_list = [1, 2, 3, 4, 5]
print(my_list[0]) # 输出: 1
解释:列表通过方括号[]定义,元素之间用逗号分隔。索引从0开始,所以my_list[0]访问的是第一个元素。
示例2:负数索引
print(my_list[-1]) # 输出: 5
小贴士:负数索引从列表末尾开始计数,-1代表最后一个元素。
示例3:切片操作
print(my_list[1:3]) # 输出: [2, 3]
解析:切片语法[start:end],不包括end位置的元素。这里获取了从第二个到第三个元素。
示例4:省略起始或结束索引
print(my_list[:3]) # 输出: [1, 2, 3]
print(my_list[3:]) # 输出: [4, 5]
注意:省略起始索引默认从头开始,省略结束索引则到末尾。
示例5:步长切片
print(my_list[::2]) # 输出: [1, 3, 5]
技巧:通过[start:end:step]可以设置步长,这里每两个元素取一个。
示例6:修改列表元素
my_list[0] = 'a'
print(my_list) # 输出: ['a', 2, 3, 4, 5]
说明:直接通过索引赋值可以修改列表中的元素。
示例7:列表加法
list1 = [1, 2]
list2 = [3, 4]
combined = list1 + list2
print(combined) # 输出: [1, 2, 3, 4]
知识点:列表可以通过加法合并。
示例8:乘法操作
repeated = [0] * 3
print(repeated) # 输出: [0, 0, 0]
实用技巧:列表乘以整数会复制该列表多次。
示例9:列表推导式
squared = [i**2 for i in range(5)]
print(squared) # 输出: [0, 1, 4, 9, 16]
高级操作:列表推导式是生成新列表的优雅方式,这里将0到4的每个数字平方。
示例10:索引与切片的逆向操作
reversed_list = my_list[::-1]
print(reversed_list) # 输出: [5, 4, 3, 2, 1]
反向技巧:通过步长为-1实现列表的反转。
示例11:列表的len函数
print(len(my_list)) # 输出: 5
长度计算:len()函数用于获取列表的长度。
示例12:实战案例:统计字符频率
假设我们需要统计一段文本中每个字符出现的次数。
text = "hello world"
char_freq = {}
for char in text:
if char in char_freq:
char_freq[char] += 1
else:
char_freq[char] = 1
print(char_freq)
实战分析:这个例子展示了循环遍历列表(这里通过字符串转换)并使用字典来统计字符频率。记得,字符串在Python中也是可索引的序列!
通过这12个示例,我们不仅学习了Python列表的基础和进阶操作,还探索了如何利用这些知识解决实际问题。