列表——list

假设一种场景,想要存班里所有同学的名字,那应该拿什么存呢?

我们可以拿一个字符串去存,例如:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
stus = "s1,s2,s3,s4,s5……sn"

那我们要从里面把某一个学生取出来,或者说,想要统计班级内有多少学生,这种方式可以是可以,但是未免太麻烦,假设被别人看见你这么写,就可以卷铺盖回家了;为了里面我们被卷铺盖回家,我们可以怎么做?

答案是用: list(列表)

比如说:

stus = ['s1','s2','s3','s4',……,'sn',]

定义一个数组很简单,中括号内,每一个元素用逗号隔开 ,里面元素的类型不一定要一致,可以为 int ,也可以为 str 类型,下标从 0 开始。

定义一个空列表,有两种方式:

stus = []
stus = list()

 

那么我们这一个 list ,怎么对它进行操作,也就是增删改查呢?

  append、insert

stus.append('鲁班')     #在 list 的末尾增加一个元素
stus.insert(9,'程咬金')    #在指定的位置插入元素
stus.insert(999,'后羿')    #在指定的位置插入元素,假设位置不存在,那么默认把元素插入到最后

 

  list 都是从下标开始取值

print('单个取',stus[0])    # 第一个元素
print('最后一个元素',stus[-1])    # 最后一个元素
print('倒数第二个元素',stus[-2])    # 倒数第二个元素
print('改之前的',stus)    # 整个列表

 

 

  找到 list 的元素下标重新赋值

stus[4] = '马可波罗'  # 将下标为 4 的元素改成马可波罗

 

  但是,这里注意不要瞎赋值,假设赋值的下标超过最大值报错: IndexError: list assignment index out of range

 

  pop、del、remove

stus.pop(0)     # 删除指定位置的元素
stus.pop()     # 默认删除list里面最后一个元素
del stus[0]     # 删除指定的位置的元素
del stus    # 如果不跟下标,那么整个 list 会被删除
stus.remove("后羿")    # 删除指定的元素,如果 list 里面有多个一样的元素,那么就只会删掉一个(假设不知道下标,可用此方法)

 

  那么有个特殊情况,假设我们删除的下标不存在,或者说要移除的元素不存在,是会报错:ValueError: list.remove(x): x not in list;IndexError: pop index out of range

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄