day-6 列表总结

1.什么是列表列表(list)
列表是python内置的可变并且有序的容器类数据类型(序列)
有序:说明可以通过下标获取元素
可变:指的是列表的中元素的个数,元素的值以及元素的位置可变(列表支持增删改)

2.列表的字面量: 中括号括起来,里面有多个元素,元素之间用逗号隔开
[元素1, 元素2, 元素3....]

元素: 可以是任何类型的数据;同一个列表,不同元素的类型可以不一样

list1=[1,2,3,'asd','汉字',True]

空列表

list2=[]

a.获取单个元素
列表[下标] - 获取指定下标对应的元素

列表一旦确定,列表中的每个元素都对应一个下标;
下标范围:0 ~ 列表长度-1;-1 ~ -列表长度
下标不能越界

list1=[12,34,56,78,1234,465768,12,34,243,5643,768,234]
list1[3]
print(list1[3]) #78

b.获取多个元素(切片) - 结果是列表
列表[开始下标:结束下标:步长]
列表[开始下标:结束下标]

print(list1[1:5:2]) # 34 78
print(list1[:4])  #12 34 56 78
print(list1[::-1])#倒叙list1

c.遍历列表(将列表中的元素一个一个取出来)
for 变量 in 列表 -> 用变量获取列表中的元素

list1=[12,34,56,78,1234,465768,12,34,243,5643,768,234]
for a in list1:
  print(a)
for a in range(len(list1))
  print(a)

.增(添加元素)

a.列表.append(元素) - 在指定的列表的最后添加指定的元素(不会产生新的列表)

list1=[1,3,5,7,9]
list1.append(11)
print(list1)

b.列表.insert(下标, 元素) - 在指定的下标前插入指定的元素

list1=[1,3,5,7,9]
list1.insert(3,'asdf')#在5的前面加入‘asdf’元素
print(list1)
结果:[1,3,'asdf',5,7,9]

.删(删除列表元素)

a. del 列表[下标] - 删除列表中指定下标对应的元素
del - 关键字, 可以删除任何内容

films = ['战狼2', '肖生克的救赎', '沉默的羔羊', '蝴蝶效应', '回到未来', '变形金刚', '小羊肖恩']
del films[-2]
print(films)
结果: ['战狼2', '肖生克的救赎', '沉默的羔羊', '蝴蝶效应', '回到未来', '小羊肖恩']

b.列表.remove(元素) - 删除指定列表中指定的元素

nums=[1,2,3,4,5,6,7]
nums.remove(5)
print(nums)
结果:[1, 2, 3, 4, 6, 7]

c.
列表.pop() - 取出列表中最后一个元素
列表.pop(下标) - 取出列表中指定下标对应的元素

nums = [2, 34, 56, 7, 8, 9, 0]
del_num = nums.pop()   # 将最后一个元素取出, 并且保存到变量del_num中
print(nums)
print(del_num)

del_num = nums.pop(1)
print(nums)
print(del_num)

list1 = [1, 'ab', 'bbb', 'hello', 89, 9, 90]
list2 = []
index = 0
while index < len(list1):
    if isinstance(list1[index], str):
        # 取出
        item = list1.pop(index)
        # 添加到新的列表中
        list2.append(item)
        continue

    index += 1

print(list1, list2)

改(修改列表元素的值)

列表[下标] = 新值 - 将列表中指定下标对应的元素修改成指定的值

list1 = [1, 2, 'abc', 4]
list1[2]=3
print(list1)
结果: [1, 2, 3, 4]

列表运算

加法

列表1 + 列表2 - 使用两个列表中元素产生一个新的列表

list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
print(list1 + list2)#[1, 2, 3,'a', 'b', 'c']
print(list1, list2)
  1. 乘法
    列表 * n(正整数) - 将列表中的元素重复n次,产生一个新的列表
print(list1*3)#[1, 2, 3,1, 2, 3,1, 2, 3]
  1. in和not in
    元素 in 列表 判断指定的元素是否在指定的列表中
    元素 not in 列表 判断指定的元素是否不在指定的列表中
names = ['小明', '路飞', '小花', '佳佳']
 if '佳佳' in names:
    print('是个大帅哥')
else:
    print('    ')

len(列表) - 获取列表元素的个数

list1=[1,2,3,4,5,6,7,8,9]
print(len(list1)) # 9

5.list

list(数据) - 将其他的数据转换成列表

注意: 这儿的数据,只能是序列(所有的序列都能转换成列表-将序列中的元素作为列表的元素)

str1 = 'hello'
print(list(str1))
['h', 'e', 'l', 'l', 'o']

6.max和min

max(列表) - 获取列表中元素的最大值
min(列表) - 获取列表中元素的最小值

注意:列表有要求:a. 列表中的元素的类型一样 b.元素对应的类型支持比较运算符

print(max([1, 45, 667, 3, 78, 90])) #667
print(min([1, 45, 667, 3, 78, 90])) #1
print(max(['ab', 'sk', 'zbs', '**(3']))#zbs

你可能感兴趣的:(day-6 列表总结)