WELCOME

不积跬步,无以至千里;不积小流,无以成江海。

Python列表

1.append() -------- 向列表的尾部添加元素

2.insert(index,object) -------- 向指定的下标处添加元素

3.sort()-------- 进行排序(从下到大 int类型)可以对字母进行排序(ASCII值)类型不能混

4.index()-------- 返回的是元素在列表中的第一个位置

5.reverse()------------ 将列表进行翻转

6.remove()---------- 删除某个元素,如果有重复,删除的是第一次出现的元素,如果元素不存在会 报错

7.count()-------- 返回的是某个元素在列表里面的个数

8.clear()--------- 清除元素

9.copy()-------- 浅拷贝对象 不等价与 =

10.extend()-------- 合并列表

11.pop()-------删除列表尾部的元素(与append相反),返回删除的元素,pop(i) i指的是下标

1.列表的添加

(1)list.append(‘元素’或者列表)

list1 = []
list2 = ['牛奶', '面包', '火腿肠', '辣条', '臭豆腐']
list1.append('面包')  # 追加
print(list1) # >> ['面包']
list1.append(list2)  # 也可以追加一个列表
print(list1) # >> ['面包', '牛奶', ['牛奶', '面包', '火腿肠', '辣条', '臭豆腐']]

(2)list.extend() 

list0.extend(list):则会将list里面的每一个元素都追加到list0里面去

list0.extend(str):则会将str拆分,然后追加到list0里面去

1 list1 = ['方便面']
2 list2 = ['牛奶', '面包', '火腿肠', '辣条', '臭豆腐']
3 list1.extend(list2)  # extend() 将list2的元素追加到list1里面
4 print(list1) # >> ['方便面', '牛奶', '面包', '火腿肠', '辣条', '臭豆腐']
5 list1.extend('橙子')
6 print(list1) # >> ['方便面', '牛奶', '面包', '火腿肠', '辣条', '臭豆腐', '橙', '子']

(3)列表的拼接:list0+list1

1 list1 = ['方便面']
2 list2 = ['牛奶', '面包', '火腿肠', '辣条', '臭豆腐']
3 list1 = list1 + list2  # 可以将两个列表中的元素拼接处一个列表
4 print(list1)  # >>['方便面', '牛奶', '面包', '火腿肠', '辣条', '臭豆腐']

 

2.列表的删除

  (1)pop(index):根据下标删除列表中的元素,下标写的时候注意不要超出列表的长度

否则就会报错:index out of range

  pop() :如果括号中没有携带任何参数,则会依次从列表后面元素往前删除。

1 list2 = ['牛奶', '面包', '火腿肠', '辣条', '臭豆腐', '牛奶']
2 list2.pop(3)
3 print(list2)  # >> ['牛奶', '面包', '火腿肠', '臭豆腐', '牛奶']
4 # pop() :从后往前依次删除
5 list2.pop()
6 print(list2)  # >>['牛奶', '面包', '火腿肠', '臭豆腐']

 

  (2)remove(元素名称) :根据元素名称进行删除。 如果删除的元素列表中不存在,则会报错: list.remove(x): x not in list,如果列表中存在多个同名的元素,只删除遇到的第一个元素,后面的删除不会删除。

 

1 list2 = ['牛奶', '面包', '火腿肠', '辣条', '臭豆腐', '牛奶']
2 list2.remove('面包')
3 print(list2)  # >>['牛奶', '火腿肠', '辣条', '臭豆腐', '牛奶']
4 list2.remove('牛奶')
5 print(list2)  # >>['火腿肠', '辣条', '臭豆腐', '牛奶']

 

 1 # 解决remove() 出现漏删的情况
 2 # 方法一
 3 list3 = ['牛奶', '面包', '牛奶', '牛奶', '火腿肠', '辣条', '臭豆腐', '牛奶', '牛奶']
 4 n = 0
 5 while n < len(list3):
 6     if list3[n] == '牛奶':
 7         list3.remove('牛奶')
 8     else:
 9         n += 1
10 print(list3)  # >>['面包', '火腿肠', '辣条', '臭豆腐']
11 # 方法二
12 list3 = ['牛奶', '面包', '牛奶', '牛奶', '火腿肠', '辣条', '臭豆腐', '牛奶', '牛奶']
13 list0 = []
14 for i in list3:
15     if i != '牛奶':
16         list0.append(i)
17 print(list0)  # >>['面包', '火腿肠', '辣条', '臭豆腐']
18 
19 # 方法三
20 for i in list3[::-1]:
21     if i == '牛奶':
22         list3.remove(i)
23 print(list3) # >> ['面包', '火腿肠', '辣条', '臭豆腐']

3.列表的修改

修改 insert(插入位置,插入元素) ,元素占了位置,其他元素向后移
index(元素):根据元素找到该元素的位置,返回值是下标
1 list1 = [1, 2, 3, 4, 5, 6]
2 
3 list1.insert(1, 8)
4 print(list1)  # >> [1, 8, 2, 3, 4, 5, 6]
5 weizhi = list1.index(5)  # index(元素):根据元素找到该元素的位置,返回值是下标
6 list1[weizhi] = 4
7 print(list1)  # >>[1, 8, 2, 3, 4, 4, 6]

4.列表的查找

 元素查找
1.元素 in 列表 元素 not in 列表 返回bool类型。
2.列表.index(元素) 返回元素的下标位置,如果没有就会报错。
3.列表.count(元素) 返回整数,统计这个元素在这个列表中出现的个数。
 1 list = [1, 5, 2, 3]
 2 list1 = [2, 5, 7, 4]
 3 list0 = list1
 4 list1.append(99)
 5 print(list0)  # >>[2, 5, 7, 4, 99]
 6 list.clear()  # 清空列表
 7 print(list)  # >> []
 8 del list1[0]
 9 print(list1)  # >>[5, 7, 4, 99]
10 del list1  # 删除这个列表 同时删除这个列表开辟的空间
11 print(list1)  # NameError: name 'list1' is not defined
12 print(list0)  # >>[5, 7, 4, 99]


5.排序和翻转

 list.sort() 默认是升序 reverse= False 为默认值,是升序,reverse=True 为降序
list.reverse() 为翻转函数,将列表翻转过来
1 list1 = [1, 5, 2, 5, 45, 23, 48, 25]
2 list1.sort()  # list.sort() 默认是升序
3 print(list1)  # >> [1, 2, 5, 5, 23, 25, 45, 48]
4 list1.sort(reverse=True)
5 print(list1)  # >> [48, 45, 25, 23, 5, 5, 2, 1]
6 list2 = [1, 5, 2, 5, 45, 23, 48, 25]
7 list2.reverse()
8 print(list1)  # >>[25, 48, 23, 45, 5, 2, 5, 1]

 

6.键盘输入列表

(1)array = list(map(int,input("输入用空格分隔的数字:").split()))

1 array = list(map(int,input("输入用空格分隔的数字:").split()))
2 print(array)
3 '''
4 输入用空格分隔的数字:2 5 22  3
5 [2, 5, 22, 3]
6 '''

(2)参数
-str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
-num – 分割次数。默认为 -1, 即分隔所有。

1 s = input("输入:").split()
2 print(s)
3 '''
4 输入:1 2 5 2 3
5 ['1', '2', '5', '2', '3']
6 '''

 

7.计算列表每一个出现次数 :Counter()

 1 from collections import Counter
 2 
 3 list1 = [1, 2, 3, 4, 1, 3, 4, 3, 2]
 4 count = Counter(list1)
 5 print(type(count))
 6 print(count)
 7 print(dict(count))
 8 
 9 '''
10 <class 'collections.Counter'>
11 Counter({3: 3, 1: 2, 2: 2, 4: 2})
12 {1: 2, 2: 2, 3: 3, 4: 2}
13 '''

 

8.合并两个列表成字典 :dict(zip(list1,list2))

1 list1 = ['name', 'age', 'gender']
2 list2 = ['Tom', '18', '']
3 
4 dict1 = dict(zip(list1, list2))
5 print(dict1)
6 
7 '''
8 {'name': 'Tom', 'age': '18', 'gender': '男'}
9 '''

 

posted @ 2022-03-20 17:45  Ambitious~  阅读(32)  评论(0)    收藏  举报