Python基础之列表

列表

定义:能装东西的东西,在python中用[ ]表示一个列表,列表中的元素通过逗号隔开。
特性:

  1. 也像字符串一样有索引和切片
  2. 索引如果超过范围会报错
  3. 可以用for循环进行遍历
  4. 用len可以拿到列表的长度

列表的增删改查

列表的添加

append():在列表的最后面追加
insert():插入

list.insert(0,"a")
#在列表的第零个位置插入元素a

extend():参数为一个列表,可以合并两个列表,批量添加

列表的删除

pop():参数为一个索引,给出被删除的索引,返回被删除的元素
remove():删除某个元素

列表的修改

直接用索引就可以进行修改操作

last[4]="增加"
#在列表中索引为4的位置增加一个元素

列表的查询

直接用print(list[索引])来查询。

练习

#把所有的姓张的人改为姓王
list=['赵敏','张绍刚','赵本山','张无忌','武则天','嬴政','马超']
#for item in list:#循环的是元素,此时我们看不到元素的索引位置
for i in range(len(list)):#len(list)是list的长度,此时直接拿到列表索引的for循环
    item=list[i] #item依然是列表中的每一项
    if item.startswith("张"):
      new_name="王"+item[1:] 
      #把新名字丢回列表(需要索引)
      list[i]=new_name #修改
 print(list)    

列表的其他操作

排序

列表本身是有顺序的,它的顺序是按照你存放的顺序保存的

list=[111,1,222,35,15]
list.sort() #对列表元素进行升序排序
list.sort(reverse=True) #对列表元素进行降序排序
print(list)

列表的嵌套

list=["abc","def",["哈哈哈""呵呵呵",["可乐","雪碧","芬达","aaa"]],"ghv","xyz"]
#找到元素“芬达”
print(list[2][2][2])
#将列表中的aaa元素全部变为大写
list[2][2][3]=list[2][2][3].upper()

列表的循环删除

#把列表中姓张的人删除
list=['赵敏','张绍刚','赵本山','张无忌','武则天','嬴政','马超']
for item in list:
   if item.startswith("张")list.remove(item) 
print(list)

运行结果如图所示:(这样的写法是错误的,会有元素被遗漏)
删除错误展示
正确做法:

#把列表中姓张的人删除
list=['赵敏','张绍刚','赵本山','张无忌','武则天','嬴政','马超']
temp=[] #准备一个临时列表,负责存储要删除的内容
for item in list:
   if item.startswith("张"):
      temp.append(item)#把要删除的内容记录下来
for item in temp:
    list.remove(item) #去原列表中进行删除
print(list)
#安全稳妥的循环删除方式:将要删除的内容,保存在一个新列表中,循环新列表,删除老列表
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值