目录
一、Python列表
一.列表基本知识
1)创建列表
2)列出表值
3)列表长度
4)列表项 - 数据类型
5)Python 集合(数组)
二.访问列表
1.正常索引
2)负索引
3)索引范围
4)负指数范围
5)检查是否存在
三.更改列表
1)单个更改
2)多个更改
3)插入列表
四.添加列表
1)末尾添加
2)指定位置添加
3)合并列表
五.删除列表
1)删除指定目标
2)删除指定索引
3)del删除指定的索引
4)清除列表
六.循环列表
1)for循环遍历
2)while循环遍历
七.列表推导式
八.列表排序
1)区分大小写的排序
2)不区分大小写的排序
3)倒序
九.复制列表
十.加入列表
十一.列表所有操作总结
十二.练习
基本形式为:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3"]
列表是使用方括号创建的:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3"] print(mylist)
返回:
创建新列表时也可以使用 list() 构造函数。
thislist = list(("apple", "banana", "cherry")) print(thislist)
允许重复
由于列表已编入索引,因此列表可以包含具有相同值的项目:
thislist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩1"] print(thislist)
列表项是有序的、可变的,并允许重复值。列表项被索引,第一项有索引[0],第二项有索引[1]等等。
单个索引
例如我要索取川川一号:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3"] print(mylist) print(mylist[0])
返回:
遍历列表
for i in mylist: print(i)
返回为:
确定列表有多少项,请使用以下 len()函数:
thislist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩1"] print(len(thislist))
返回:
列表项可以是任何数据类型。例如:
list1 = ["apple", "banana", "cherry"] list2 = [1, 5, 7, 9, 3] list3 = [True, False, False] print(list1) print(list2) print(list3)
列表项已编入索引,您可以通过引用索引号来访问它们:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3"] print(mylist[0])
注意:第一项的索引为 0,也就是说索引是从0开始的
负索引意味着从头开始,-1指最后一项, -2指倒数第二项等。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3"] print(mylist[-1])
mylist = ["笨小孩1", "笨小孩2", "笨小孩3"] print(mylist[1:3])
mylist = ["笨小孩1", "笨小孩2", "笨小孩3"] print(mylist[-3:-1])
要确定列表中是否存在指定的项目,请使用in关键字。
例如,检查列表中是否存在“apple”:
thislist = ["apple", "banana", "cherry"] if "apple" in thislist: print("Yes, 'apple' is in the fruits list")
要更改特定位置的值,需要通过索引号:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] print(mylist[0]) mylist[0]="笨小孩5" print(mylist[0])
修改成功:
索引号需要用范围表示。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4","笨小孩5"] mylist[1:3]=["笨小孩加油","笨小孩最棒"] print(mylist)
修改成功:
insert()方法在指定的索引处插入一个项目。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.insert(2,'帅哥呀') print(mylist)
插入成功:
要将值添加到列表的末尾,请使用append() 方法:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.append("笨小孩加油") print(mylist)
添加成功:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.insert(2,'笨小孩') print(mylist)
添加成功:
要将另一个列表中的元素附加到当前列表,请使用extend()方法。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist1 = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.extend(mylist1) print(mylist)
合并成功:
extend()方法不一定要 列表,您也可以添加任何可迭代对象(元组、集合、字典等)。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist2=("笨小孩","是个菜鸟") mylist.extend(mylist2) print(mylist)
添加成功:
remove()方法删除指定的项目。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.remove('笨小孩2') print(mylist)
删除成功:
pop()方法删除指定的索引。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.pop(2) print(mylist)
删除成功:
如果不指定索引,该pop()方法将删除最后一项。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.pop() print(mylist)
删除成功:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] del mylist[0] print(mylist)
删除成功:
该del关键字也可以完全删除列表。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] del mylist
clear()方法清空列表。该列表仍然存在,但没有内容。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.clear() print(mylist)
清空:
方法一:
循环遍历列表您可以使用循环遍历列表项for 。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] for i in mylist: print(i)
遍历成功:
方法二:遍历索引号
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] for i in range(len(mylist)): print(mylist[i])
返回:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] i = 0 while i < len(mylist): print(mylist[i]) i = i + 1
返回:
例如:根据fruits列表,您需要一个新列表,其中仅包含名称中带有字母“a”的fruits。
如果没有列表理解,您将不得不编写一个for带有条件测试的语句:
fruits = ["apple", "banana", "cherry", "kiwi", "mango"] newlist = [] for x in fruits: if "a" in x: newlist.append(x) print(newlist)
返回为:
使用列表推导式,你只需要一行代码即可!
fruits = ["apple", "banana", "cherry", "kiwi", "mango"] newlist = [x for x in fruits if "a" in x] print(newlist)
返回一样:
换一个例子,只接受小于 5 的数字:
newlist = [x for x in range(10) if x < 5] print(newlist)
返回
返回“orange”而不是“banana”:(这个不是很好理解,多想想)
fruits = ["apple", "banana", "cherry", "kiwi", "mango"] newlist = [x if x != "banana" else "orange" for x in fruits] print(newlist)
返回为:
默认情况下,该sort()方法区分大小写,导致所有大写字母都排在小写字母之前:
thislist = ["banana", "Orange", "Kiwi", "cherry"] thislist.sort() print(thislist)
返回:
如果你想要一个不区分大小写的排序函数,使用 str.lower 作为键函数:
thislist = ["banana", "Orange", "Kiwi", "cherry"] thislist.sort(key = str.lower) print(thislist)
返回:
reverse()方法反转元素的当前排序顺序。
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] mylist.reverse() print(mylist)
返回为:
copy()方法制作列表的副本:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] my = mylist.copy() print(my)
返回:
list()方法制作列表的副本:
mylist = ["笨小孩1", "笨小孩2", "笨小孩3","笨小孩4"] my = list(mylist) print(my)
返回为:
最简单的方法之一是使用+ 运算符。
list1 = ["a", "b", "c"] list2 = [1, 2, 3] list3 = list1 + list2 print(list3)
返回:
稍微有意思点,连接两个列表的另一种方法是将 list2 中的所有项一个一个地附加到 list1 中:
list1 = ["a", "b" , "c"] list2 = [1, 2, 3] for x in list2: list1.append(x) print(list1)
返回:
extend() 方法,其目的是将元素从一个列表添加到另一个列表:
list1 = ["a", "b" , "c"] list2 = [1, 2, 3] list1.extend(list2) print(list1)
返回:
如果你英文好可以看看,当然,这些所有操作我都讲过一遍了。
1-打印fruits列表中的第二项。
fruits = ["apple", "banana", "cherry"] print( )
2-将fruits列表中的值从“apple”改为“kiwi”。
fruits = ["apple", "banana", "cherry"] =
3-使用 append 方法将“orange”添加到fruits列表中。
fruits = ["apple", "banana", "cherry"]
4-使用插入方法将“柠檬”添加为fruits列表中的第二项。
fruits = ["apple", "banana", "cherry"] ="lemon")
5-使用 remove 方法从fruits列表中删除“banana”。
fruits = ["apple", "banana", "cherry"]
6-使用负索引打印列表中的最后一项。
fruits = ["apple", "banana", "cherry"] print( )
7-使用索引范围打印列表中的第三、第四和第五项。
fruits = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"] print(fruits[])
8-使用正确的语法打印列表中的项目数
fruits = ["apple", "banana", "cherry"] print( )