列表
列表是有序的,可以通过下标来访问列表中元素,同一个列表中支持不同的数据类型,支持对元素进行增删改查的操作
创建列表
# 使用中括号创建列表
ls = ["Python", 1989, True, {"version": 3.7}]
# list(可迭代对象) 可迭代对象包括:字符串、元组、集合、range()等
ls1 = list((1,2))
获取列表长度
len(ls)
通过索引获取元素
正向索引从0开始,反向索引从-1开始
cars = ["BYD", "BMW", "AUDI", "TOYOTA"]
print(cars[0])
print(cars[-1])
输出
BYD
TOYOTA
正向切片
第一个位置不写默认为0,第二个位置不写默认到最后一个元素,切片长度为第二个值减第一个值
print(cars[:3]) # 前三个元素,开始位置缺省,默认为0;切片间隔缺省,默认为1
输出: ['BYD', 'BMW', 'AUDI']
增加元素
往列表后面加元素
languages = ["Python", "C++", "R"]
languages.append("Java") #往列表后面加元素
languages
输出: ['Python', 'C++', 'R', 'Java']
往指定位置插入元素,1表示第二个元素,插入位置的元素整体往后移动
languages.insert(1, "C") # 往指定位置插入元素
languages
输出: ['Python', 'C', 'C++', 'R', 'Java']
逐个插入
languages = ['Python', 'C', 'C++', 'R', 'Java']
languages.extend(["Ruby", "PHP"])
languages
输出: ['Python', 'C', 'C++', 'R', 'Java', 'Ruby', 'PHP']
删除元素
删除指定位置元素,不写索引默认删最后一个
languages = ['Python', 'C', 'C++', 'R', 'Java']
languages.pop(1)
languages
输出: ['Python', 'C++', 'R', 'Java']
删除列表中的第一次出现的待删元素 列表.remove(待删元素)
languages = ['Python', 'C', 'R', 'C', 'Java']
languages.remove("C")
languages
输出: ['Python', 'R', 'C', 'Java']
查找元素
列表中第一次出现待查元素的位置 列表.index(待查元素)
languages = ['Python', 'C', 'R','Java']
idx = languages.index("R")
idx
输出: 2
修改元素
通过"先索引后赋值"的方式,对元素进行修改 列表名[位置]=新值
languages = ['Python', 'C', 'R','Java']
languages[1] = "C++"
languages
输出: ['Python', 'C++', 'R', 'Java']