1. 创建列表
l1 = list()
l2 = list([2, 3, 4])
l3 = list(["red", "green", "blue"])
l4 = list(range(3, 6))
l5 = list("abcd") # 列表的内容是:'a', 'b', 'c', 'd'
也可简写成:
l1 = []
l2 = [2, 3, 4]
l3 = ["red", "green", "blue"]
2. List是一种序列类型
与字符串的比较:
- 二者都是序列
- 字符串是字符序列
- list可以是任何元素的序列
在字符串中的常用操作同样适用与列表。如:
x not in s
s1 + s2
s*n
s[i]
注意不要下标越界,允许负数下标s[i:j]
len(s)
min(s),max(s)
sum(s)
for loop
<
,<=
,>
,>=
,=
,!=
3. 使用for循环遍历元素
Python中列表的元素是可迭代的
。Python的for循环可以让你在不使用下标变量的情况下遍历列表。
for u in myList:
print(u)
遍历奇数位上的元素:
for i in range(0, len(myList), 2):
print(myList[i])
列表解析:创建列表的简单方式,在方括号内包含一个for字句的表达式,之后是0或多个for或if字句。列表解析产生一个由表达式求值结果组成的列表。例如:
l1 = [x for x in range(5)]
l2 = [0.5 * x for x in l1 ]
l3 = [x for x in l2 if x < 1.5]
4.list的方法
append(x)
添加x到末尾count(x)
**统计**x出现的次数extend(lst)
将列表lst中的元素全部追加列表中index(x)
**搜索**x出现的位置insert(index, x)
在指定位置插入xpop(i)
删除指定位置的元素,并返回它。其中i可选,若为空则默认删除最后一个remove(x)
删除列表中的第一个xreverse()
翻转列表sort()
升序排列
5.将字符串分成列表
items = "James John Peter Susan".split()
items = "09/20/2012".split()
页可以使用正则表达式来匹配和分割字符串
6.列表的输入
逐个输入:
lst = []
print("Enter 10 numbers:")
for i in range(10):
lst.append(eval(input()))
一次性输入,用空分隔:
s = input("Enter 10 numbers separated by spaces from one line:")
items = s.split()
lst = [eval(x) for x in items]
7.多维列表
排序:可以用sort方法通过每一行的第一个元素对二元列表进行排序,若第一个元素相同,那么就按第二个元素进排序,以此类推。
默认按第一个元素排序:
points = [[4, 2, 5], [1, 7, 0], [4, 5, 4], [1, 2, 9], [5, 1, 6]]
points.sort()
print(points)
按第三个元素进行排序:
points = [[4, 2, 5], [1, 7, 0], [4, 5, 4], [1, 2, 9], [5, 1, 6]]
for i in points:
i[0], i[2] = i[2], i[0]
points.sort()
for i in points:
i[0], i[2] = i[2], i[0]