跳至正文
View Categories

1 min read

主要内容 #

  1. 列表的定义
  2. 列表的索引
  3. 列表的截取

1. 列表的定义 #

有限的元素按照一定的顺序,排列成的一个集合,即为列表。 列表是元素(element)的有序组合。创建格式如下: [element1,element2,element3,…,elementN] 从以上格式可以看出,列表是通过中括号创建的,中括号里是列表的元素,每个元素之间使用英文逗号,分隔。 列表中的元素可以为任何数据类型,而且列表可以赋值给一个变量,例如:
list1 = [1, 2, 3, 4, 5 ]
list2 = ['Python', 'c++', 1997, 2000]
list3 = ['公主与青蛙', '奇幻森林', '冰川时代', '玩具总动员', '捉妖记']

2. 列表的索引 #

列表中的元素个数可以是0个、1个或多个。 列表索引和字符串索引类似,表示元素在列表中的顺序。 列表中的每一个元素都对应一个唯一的索引。 列表中的索引是从0开始的,故第1个元素的索引是0。下表是列表 [‘公主与青蛙’, ‘奇幻森林’, ‘冰川时代’, ‘玩具总动员’, ‘捉妖记’] 及其索引的举例。 与访问字符串索引一样,可以使用中括号访问列表中的元素,格式如下: List[index] List是列表或列表变量,index是索引。索引需要放在一个中括号 [] 里。 例如: 以下程序输出变量list1中指定索引的元素内容:
list1 = ['Python', 'c++', 1997, 2000]
print('第1个元素为:', list1[0])
print('第2个元素为:', list1[1])
print('第3个元素为:', list1[2])
构建及访问列表举例:
'''
构建一个列表list1,列表里的元素依次为:
'超人','蝙蝠侠',65535,'python',True
'''
list1 = ['超人','蝙蝠侠',65535,'python',True]
#打印出列表list1中索引为3的元素
print(list1[3])

3. 列表的截取 #

如果需要访问列表中的多个元素,则需要列表进行截取,截取方法和字符串截取方法一样。 可以使用中括号和冒号进行截取。截取之后的结果仍然为列表。格式如下: result = List[start:end:step]
  • List 表示一个列表或列表变量
  • start 表示要截取的第一个元素所在的索引(截取时包含该元素)。如果不指定,默认为 0,也就是从列表的开头截取
  • end 表示要截取的最后一个元素所在的索引(截取时不包含该元素)。如果不指定,默认为元素的长度
  • step 表示间隔或步长。指的是从 start 索引处的元素开始,每 step 个距离获取一个元素,直至 end 索引出的元素。 step 默认值为 1,当省略该值时,最后一个冒号也可以省略。
  • result为一个变量名,用来存储截取的结果
  • 注:列表截取遵循左闭右开原则。
  • 截取列表索引从0到2之间的元素,程序如下:
    list1 = ['Python', 'c++', 1997, 2000, '超人','蝙蝠侠']
    list2 = list1[0:2] #或者 list2 = list1[:2]
    print(list2)
    截取列表索引从0到4之间的间隔为2的元素,程序如下:
    list1 = ['Python', 'c++', 1997, 2000, '超人','蝙蝠侠']
    list2 = list1[0:4:2] #或者 list2 = list1[:4:2]
    print(list2)
    截取全列表间隔为2的元素,程序如下:
    list1 = ['Python', 'c++', 1997, 2000, '超人','蝙蝠侠']
    list2 = list1[::2] 
    print(list2)

    4. 小结 #

  • 列表是元素(element)的有序组合
  • 使用中括号+索引的方式可以访问列表中的元素
  • 列表截取的方法格式:result = List[start:end:step]
  • OJ训练题 #

    1、3的倍数 – ★
    2、饮料瓶回收机 – ★
    3、能量回收 – ★
    4、【基础】寻找2的幂 – ★★
    5、【基础】骑士的金币 – ★★★