Python3-2020-测试开发-6- 列表list

一、普通列表创建

1.1 普通列表创建

# 1. 普通列表创建
a = []
a.append(20)
print(a)

1.2 range() 创建整数列表

b = list("chushujin")
print(b)

c = list(range(10))
print(type(c))
print(c)

1.3 推导式列表创建

# 3. 推导式的创建列表

# for循环生成列表
d = [x*2 for x in range(5)]
print(d)   # [0, 2, 4, 6, 8]

# 通过if过滤元素
e = [x for x in range(100) if x % 9 ==0]
print(e)   # [0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99]

二、列表的操作方法

1.1列表的增加

# 2.1 append() 在尾部添加元素,不产生新的对象
a = [10,50,30,100]
print(id(a))
a.append(200)
print(a)
print(id(a))

1.1.2 +运算符添加元素,产生新的对象

# 4.2 +运算符添加元素,产生新的对象

a = a + [300]
print(a)
print(id(a))

1.1.3 extend()方法,常用于两个列表的结合,不会产生新的对象

# 2.3 extend()方法,常用于两个列表的结合,不会产生新的对象

a.extend([400,500])
print(a)
print(id(a))

1.1.4 insert()方法

# 2.4 insert()方法,指定位置插入对应的元素,插入位置之后的元素会进行移动,影响处理速度,涉及大量元素时,避免使用,类似这种移动的函数还有
# remove(),pop(),del()他们在删除非尾部元素时候也会发生操作位置后的元素移动

print(a)
print(id(a))
a.insert(2,1000)
print(a)
print(id(a))

1.1.5 乘法扩展

# 2.5 乘法扩展
b = [66.77,88]
print(b*3)   # [66.77, 88, 66.77, 88, 66.77, 88]

2.1 列表的删除

2.1.1 del()

A = [10,20,666,30,50]
del A[2]
print(A)  # [10, 20, 30, 50]

2.1.2 pop()

B = [11,21,31,44,51]
print(B.pop(3))
print(B)
"""
44
[11, 21, 31, 51]
"""

2.1.3 remove(),删除第一个出现的元素

remove(),删除第一个出现的元素
C = [100,200,555,"chu",300,"chu",400,"chu"]
C.remove("chu")
print(C) # [100, 200, 555, 300, 'chu', 400, 'chu']

3.1 列表元素的访问和计数

3.1.1 通过索引访问

D = [11,22,33,44,55,66,77,55,88,55,99]
通过索引访问

print(D[3])

3.1.2 index(value,[start,[end]])获得指定元素在列表中首次出现的索引

index(value,[start,[end]])获得指定元素在列表中首次出现的索引
print(D.index(55))
print(D.index(55,5))

3.1.3 count()获得指定元素在列表中出现的次数

count()获得指定元素在列表中出现的次数
print(D.count(55))

3.1.4 len()返回列表的长度,即列表中包含元素的个数

len()返回列表的长度,即列表中包含元素的个数
print(len(D))

3.1.5 成员资格的判断:in   返回True或False判断   count()判断,等于0不存在,大于0存在

成员资格的判断:in   返回True或False判断   count()判断,等于0不存在,大于0存在
print("a" in D)
print(D.count("a"))  # =0不存在
print(D.count(55))   # 大于0存在

3.1.6 切片

# 切片
E = [10,20,30,40,50,60,70]
print(E[:])
print(E[1::2])
print(E[1:])
print(E[:2])
print(E[::-1]) # 反向提取
print(E[-3:])

输出

"""
[10, 20, 30, 40, 50, 60, 70]
[20, 40, 60]
[20, 30, 40, 50, 60, 70]
[10, 20]
[70, 60, 50, 40, 30, 20, 10]
[50, 60, 70]
"""

4.1 列表的排序

sort()列表排序,修改原列表,不新生成新列表
F = [10,30,22,26,50,34]
#  sort()列表排序,修改原列表,不新生成新列表
print(id(F))
F.sort()    # 默认升序排列
print(F)
print(id(F))

F.sort(reverse=True)   # 降序排列
print(F)

4.1.1 随机排序

import random

random.shuffle(F)
print(F)
print(id(F))

4.2.1 sorted() 建立新的列表,修改列表

# sorted() 建立新的列表,修改列表
G = [10,30,22,26,50,34]
G1 = sorted(G)
print(G1)
print(id(G1))

输出:

"""
4490685768
[10, 22, 26, 30, 34, 50]
4490685768
[50, 34, 30, 26, 22, 10]
[10, 22, 30, 50, 34, 26]
4490685768
[10, 22, 26, 30, 34, 50]
4490743880

<list_reverseiterator object at 0x108749f60>
[50, 34, 30, 26, 22, 10]
[]
"""

5.1 min()取出最小值,max()取出最大值,sum()列表求和

min()取出最小值,max()取出最大值,sum()列表求和
print(min(G1))
print(max(G1))
print(sum(G1))


输出:


"""
10
50
172
"""
原文地址:https://www.cnblogs.com/chushujin/p/12832661.html