python 列表

python列表

序列操作(字符串、元组亦可)

L = ['a','b','c']

len()函数

print(f"len(L):   {len(L)}") 
len(L):   3

索引

print(f"L[0]:   {L[0]}") 
L[0]:   a

切片

print(f"L[1:2]:   {L[1:2]} \n"
      f"L[:-1]:   {L[:-1]} \n"
      f"L[::-1]:   {L[::-1]} \n"
      f"L[::2]:   {L[::2]} \n"
      )
L[1:2]:   ['b'] 
L[:-1]:   ['a', 'b'] 
L[::-1]:   ['c', 'b', 'a'] 
L[::2]:   ['a', 'c']

拼接

print(L+['hahaha','oh'])
print(L*3)
['a', 'b', 'c', 'hahaha', 'oh']
['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']

特有方法

添加

.append()
L = ['a','b','c']
L.append('wa') # 在列表末尾添加元素
print(L)
['a', 'b', 'c', 'wa']
.insert(索引,添加字符串)
L = ['a','b','c']
L.insert(1,'pig')   # 在索引位置插入字符串
print(L)
['a', 'pig', 'b', 'c']

删除

del
L = ['a','b','c']
del L[1] # 按索引,删除目标
print(L)
['a', 'c']
.pop()
L = ['a','b','c']
L.pop(1) # 按索引弹出
print(L)

L.pop() # 默认弹出最后一个
print(L)

a = L.pop() # 可以用变量接受弹出的数
print(a)
['a', 'c']
['a']
a
.remove()
L = ['a','b','c']
L.remove('c') # 根据值删除元素
print(L)
['a', 'b']
.clear() 清空
L = ['a','b','c']
L.clear()
print(L)
[]

排序

.sort()
  • sort(*,key = None,reverse = False),原地排序

    • 使用 < 来进行各项间比较,即从小到大(我估计是比较ascii码的) 两个关键值:
    • key 指定带有一个参数的函数,用于从每个列表元素中提取比较键 (例如 key=str.lower)。 对应于列表中每一项的键会被计算一次,然后在整个排序过程中使用。 默认值 None 表示直接对列表项排序而不计算一个单独的键值。
    • reverse 为一个布尔值。 如果设为 True,则每个列表元素将按比较出的反向顺序进行排序。
L = ['bd','da','acf','cdde']
L.sort() # 默认升序排列,即是字母顺序,因为字母表转化成ascii码就是从小到大排列
print(L)
['acf', 'bd', 'cdde', 'da']

def get_second(elem):
    # 返回字符串中索引为1的内容,即字符串第二个字母
    return elem[1]
L.sort(key = get_second) # 按各字符串中第二个字母排列
print(L)
['da', 'acf', 'bd', 'cdde']

L.sort(key = len) # 按字符串长度排列
print(L)
['da', 'bd', 'acf', 'cdde']

L.sort(reverse = True) # 降序排列,即从大到小
print(L)
['da', 'cdde', 'bd', 'acf']

sorted()

‘’’
sorted(iterable, *, key=None, reverse=False)
‘’’

L = ['d1234','c123','a12','b1']
print(f"临时排序 sorted(L):{sorted(L)}")
print(f"L没变:{L}")

print(f"\n同sort一样使用参数key、reverse:")
print(f"\t按字符串长度,从大到小:{sorted(L,key = len,reverse = True)}")
临时排序 sorted(L):['a12', 'b1', 'c123', 'd1234']
L没变:['d1234', 'c123', 'a12', 'b1']

同sort一样使用参数key、reverse:
	按字符串长度,从大到小:['d1234', 'c123', 'a12', 'b1']
reverse()

原地逆转

L = ['++++','----','1234','cccc']
L.reverse()
print(L)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值