Python基础教程:列表

列表是可变的,即可修改其内容。使用函数list可以利用字符串来创建列表。

print(list('watkins'))  # ['w', 'a', 't', 'k', 'i', 'n', 's']

# 要将字符列表转换为字符串,可使用''.join(somelist)
print(''.join(['w', 'a', 't', 'k', 'i', 'n', 's'])) # watkins

基本的列表操作

修改列表:给元素赋值、删除元素、给切片赋值

name = list('watkins')

# 可将切片替换为长度与其不同的序列
name[3:] = list('son')
print(name) # ['w', 'a', 't', 's', 'o', 'n']


# 可在不替换原有元素的情况下插入新元素
name[3:3] = list('2019')
print(name) # ['w', 'a', 't', '2', '0', '1', '9', 's', 'o', 'n']

# 可用来删除切片
name[3:] = []
print(name) # ['w', 'a', 't']

列表方法

方法是与对象联系紧密的函数,通常使用这样的调用方法:object.method(arguments)

方法描述说明
append将一个对象追加到列表末尾就地修改列表
clear就地清空列表的内容类似于切片赋值语句lst[:] = []
copy赋值列表b = a.cpoy()将b关联到a的副本。类似于使用a[:]list(a)
count计算指定的元素在列表中出现了多少次不存在直接返回0
extend能够同时将多个值附加到列表末尾可使用一个列表来扩展另一个列表
index在列表中查找指定值第一次出现的索引不存在会引发ValueError异常
insert将一个对象插入列表两个参数:索引、对象。insert(0,...)表示在第一个位置插入对象
pop从列表中删除一个元素并返回这一元素pop是唯一既修改列表又返回一个非None值的列表方法。
pop(0)表示从第一个位置弹出元素
remove删除第一个值为指定值的元素只删除了为指定值的第一个元素。不存在将引发ValueError异常
reverse按相反的顺序排列列表中的元素就地修改不返回任何值。
list(reversed(lst))返回按相反的顺序迭代的序列。
sort对列表就地排序两个可选参数:key和reverse。
两种方式:先将y关联到x的副本再对y进行排序、使用函数sorted
name = list('watkins')
nu = name
nu[3:] = list('son')
print(name) # ['w', 'a', 't', 's', 'o', 'n']

name = list('watkins')
nv = name.copy()
nv[3:] = list('son')
print(name) # ['w', 'a', 't', 'k', 'i', 'n', 's']

name = list('watkins')
try:
    print(name.index('m'))
except ValueError:
    print('Value Error')    # Value Error

para = list('baby')
if 'b' in para:
    para.remove('b')
print(para) # ['a', 'b', 'y']

# 函数reversed返回可迭代对象,可使用list对返回的对象进行转换
name = list('watkins')
print(list(reversed(name))) # ['s', 'n', 'i', 'k', 't', 'a', 'w']

name = list('watkins')
nu = name.copy()
nu.sort()
print(nu)   # ['a', 'i', 'k', 'n', 's', 't', 'w']
print(name) # ['w', 'a', 't', 'k', 'i', 'n', 's']

# 函数sorted返回一个列表,key参数为自定义函数,reverse参数默认为False,指明升序
names = ['Watkins', 'uSelf', 'siso', 'Oscar', 'pjing']
names.sort(key=len, reverse=True)
print(names)    # ['Watkins', 'uSelf', 'Oscar', 'pjing', 'siso']
print(sorted(names, key=str.lower)) # ['Oscar', 'pjing', 'siso', 'uSelf', 'Watkins']

(最近更新:2019年05月16日)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值