Skip to content

20231118 - Python 序列

list

  • 序列 通用操作

    • 多个替换(按步长)

      python
      lst = [1, 2, 3, 4, 5, 6, 7]
      # 报错, 需要 3 个元素以替换每个 index % 2 == 0 的元素
      lst[0:6:2] = [100, ]
      # lst[0] == 100, lst[2] == 101, lst[4] == 102
      lst[0:6:2]  = [100, 101, 102]
    • list.remove(<value>)

      python
      lst = [1, 1, 2, 3, 4]
      lst.remove(1)  # 只删除首个出现的 `1`
    • list.pop(<index>)

      python
      lst.pop(0)  # 删除 index == 0 的元素
      lst.pop()  # 删除 index == -1 (最后一个) 元素
    • list.extend(<序列>) 添加序列中每个元素至列表, 相比 append, 后 者只会添加到一个元素

    • list.insert(<index>, <value>) 插入元素

    • list.reverse() 倒序

  • list 独占操作

    • list.sort() 从小到大排序
      list.sort(reverse=True) 从大到小排序

tuple

range

str

由于字符串不可变, 故 string[0] = 'xxx' 会报错

  • str 独占操作

    • str.capitalize() 首字母大写
    • str.title() 首字母大写, 后面全变为小写
    • str.isnumberic() 判断是否全为 [0-9] 字符, 不包含 - .
    • str.isalpha() 判断是否全为字母 ([a-z] | [A-Z])

dict

  • dict 独占操作

    • dic = dict(a=b, c=d, ...) 这样也可创建 dict (使用 kwargs)
    • dict.fromkeys(<keys>) 创建只有 key 没有 value 的字典, value 全部为 None
    • dict.pop(<key>, [default]) 删除 key 所对 value, 返回对应的 value, 如果找不到, 报错 / (若设置了 default) 返回 default

sorted 函数

  • 该函数可以给 tuple 排序, 但是输出 list