资讯详情

python_07 列表相关操作 、函数、相关方法、推导式

列表相关操作 、函数、相关方法、推导式

1.数学运算: 、*

列表1 列表2 — 将列表1 将列表2中的元素合并成新列表

列表 * N、N * 列表 — N将指定列表合并成新列表(列表中的元素重复N次以产生新列表)

list1=[10,20,30] list2=[100,200] result = list1   list2 print(result)               #[10, 20, 30, 100, 200]  print(list1*3)              #[10, 20, 30, 10, 20, 30, 10, 20, 30] 

2、比较运算符:< 、 >、 <= 、 >= 、 == 、 !=

1)比较相等: == 、 !=

列表有序数列,顺序不同,结果也不同

print([10,20,30]==[10,30,20])       False print([10,20,30]==[10,20,30])       True 

2)比较大小 < 、>、 >=、 <=

两个列表比较大小,比较第一对不相等元素的大小

list1 = [20,300,400,500] list2 = [21,2] print(list1 > list2)                  #False  print([10,3,300,400]<[10,4,-100])      #True

3、in 和 not in

元素 in 列表 —判断列表中是否存在指定元素

元素 not in 列表 — 判断列表中是否不存在指定元素

1)练习:已知一个列表保存了多个学生的姓名,要求去掉列表中重复的名字

例如:names = [‘小明’, ‘张三’, ‘李四’, ‘张三’, ‘张三’, ‘小明’, ‘王五’, ‘王五’]

去重后:names = [‘小明’, ‘张三’, ‘李四’, ‘王五’]

print(10 in [[10,20],30])         False
print(10 in [10,20,30])           True

names = ['小明', '张三', '李四', '张三', '张三', '小明', '王五', '王五']
new_names=[]
for i in names:
    if i not in new_names:
        new_names.append(i)
print(new_names) 
['小明', '张三', '李四', '王五']
for i in range(len(names)):
    last_name=names.pop(-1)
    if last_name not in names:
        names.insert(0,last_name)
print(names)
['小明', '张三', '李四', '王五']
2)练习:提取两个列表的公共元素,产生一个新的列表
练习:提取两个列表的公共元素,产生一个新的列表
A = [10, 23, 89, 67, 10, 20]
B = [78, 90, 23, 88, 10]          # 公共元素:[10, 23]

C = []                        
for i in A:
    if i in B and i not in C :
        C.append(i)
print(C)

4、列表相关函数

1、sum(列表)

—求列表中所有的元素的和(要求列表中的所有的元素必须是数字)

scores = [29,34,8.9,98,99]
print(sum(scores))
2、max \ min

max (列表) 求列表中值最大的元素

max (数据1,数据2,数据3…)求多个数据中的最大值

scores = [29,34,8.9,98,99]
print(max(scores))     99
print(min(scores))     8.9
a=10
b=20
c=30
print(max(a,b,c))
print(min(a,b,c))
3、 sorted(列表)

Sorted —将列表中的所有的元素从小到大排序,产生一个新的列表(不会修改原列表)

sorted(列表,reverse = True) — 将列表中的所以元素从大到小排序,产生一个新的列表(不会修改原列表)

scores = [29,34,8.9,98,99,72]
new_scores=sorted(scores)
print(new_scores)

new_scores2=sorted(scores,reverse=True)
print(new_scores2)
4、list(数据)

将指定数据转换成列表(数据必须是容器型数据类型的数据)

所以的序列都可以转换成列表;转换的时候将序列中的元素作为列表的元素~

print(list("abc"))
print(list(range(3)))

5、方法的使用方式: xxx**.**xxx ( )

列表相关方法:列表**.**xxx()

1、列表.clear ( ) — 清空列表
list1 = [10, 23, 39, 41, 52, 55, 80]
list1.clear()
print(list1)
2、列表**.**copy ( ) —复制指定的列表产生一个一模一样的新列表并且返回

列表[ : ] == 列表.copy == 列表*1 == 列表 + []

A=[29,78,9,23]
B=A
C=A.copy()

A.append(1000)

print("A",A)            # A [29, 78, 9, 23, 1000]
print("B",B)            # B [29, 78, 9, 23, 1000]
print("C",C)            # C [29, 78, 9, 23]

print(id(A))            # 2609869214784
print(id(B))            # 2609869214784
print(id(C))            # 2609869214912
3、列表.count(元素)

—统计列表中指定元素的个数

A = [29,78,9,23,100,9]

print(A.count(9))            # 2
4、列表1**.**extend(列表2 )

—将序列中的元素全部添加到列表的最后

A = [29,78,9,23]
print(A)

A.extend([10,20])
print(A)

A.append("abc")
print(A)
A.extend("abc")
print(A)

[29, 78, 9, 23]
[29, 78, 9, 23, 10, 20]
[29, 78, 9, 23, 10, 20, 'abc']
[29, 78, 9, 23, 10, 20, 'abc', 'a', 'b', 'c']
5、列表.index(元素)

— 获取指定元素在列表中的下标值(0开始的下标值)

A = [29,78,9,23,78]
print(A.index(78))
print(A.index(9))
6、列表.reverse() —将列表倒叙
A = [29, 78, 9, 23, 78]

A.reverse()

print(A)     #[78, 23, 9, 78, 29]
7、列表.sort()

列表.sort ( revere = True )

A = [29, 78, 9, 23, 78,9]
A.sort()
print(A)

# [9, 9, 23, 29, 78, 78] 

6、列表表达式 — 快速创建列表的表达式

1、结构1: [ 表达式 for 变量 in 序列]

功能:创建列表,列表中的元素就让变量去序列中取值,取一个值就计算一次表达式的结果,这个结果就是列表的元素

a=[i*2 for i in range(5)]

print(a)          # [0, 2, 4, 6, 8]

练习1:提取num 中所有元素的个位数

nums=[18,34,661,90,75]
b=[i%10 for i in nums]    # [8,4,1,0,5]
print(b)
[8, 4, 1, 0, 5]
2、结构2:[ 表达式 for 变量 in 序列 if 条件语句 ]

创建一个列表,列表的元素就是变量去序列中取值,取一个值判断一次条件是否成立,成立就计算一次表达式结果,并且将结果作为列表的元素

C=[i for i in range(10) if i % 2]
print(c)
[1, 3, 5, 7, 9]
nums=[18,34,661,90,75]
d = [ i%10 for i in nums if i % 2 == 0]
print(d)
# [8, 4, 0]

标签: revere传感器csprevere传感器kis

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台