Python笔记/期末复习

数据类型及名字绑定:

  1. 元组 (Tuple):

    • 元组是不可变的序列,一旦创建就不能修改。
    • 可以使用 tuple() 函数将列表、字符串、生成器对象转换为元组。
    • 元组的元素可以是任意类型,包括混合类型。
    • 常见的元组操作包括索引 (tuple[index])、切片 (tuple[start:stop])、和连接 (tuple1 + tuple2)。
    • 元组作为不可变序列,可以作为字典的键。
  2. 集合 (Set):

    • 集合是一种无序的容器,满足以下条件:
      1. 集合内不允许有重复的元素。
      2. 集合的元素是无序的,不分前后顺序。
      3. 集合内的元素必须是可哈希的,例如整数、浮点数、字符串、元组、布尔值是可哈希类型,而列表、集合、字典不是。
    • 创建集合:
      • 使用大括号 {} 或 set() 函数,如:s = {1, 2, 3}s = set([1, 2, 3])
      • 注意:创建空集合必须使用 set() 函数,{} 创建的是空字典。
    • 集合的基本操作包括:
      • 添加元素:s.add(element)
      • 移除元素:s.remove(element) (如果元素不存在会报 KeyError),s.discard(element)(如果元素不存在不会报错)。
      • 集合的长度:len(s)
      • 集合的遍历:for x in s
      • 弹出元素:s.pop()(随机弹出一个元素)。
      • 判断两个集合是否相同:s1 == s2,无需考虑元素的顺序。
    • 集合运算:
      • 交集:s1 & s2 或 s1.intersection(s2)
      • 并集:s1 | s2 或 s1.union(s2)
      • 差集:s1 - s2 或 s1.difference(s2)
      • 对称差集:s1 ^ s2 或 s1.symmetric_difference(s2)
      • 子集判断:s1.issubset(s2)
      • 超集判断:s1.issuperset(s2)
  3. bytes:

    • bytes 是不可变的二进制序列。
    • 通常用于处理二进制数据,文件操作,网络传输等。
    • 创建:b = bytes([50, 100, 76]) 或使用字面量 b = b'hello'
    • 可以像处理字符串那样使用索引、切片等。
  4. 序列 (Sequences):

    • 列表(List)、字符串(String)、元组(Tuple)、bytes、bytearray 都被视为序列类型。
    • 序列的共同特点是可以通过索引访问元素,且可以进行切片操作。
    • 序列还支持成员检查 (in 和 not in 表达式)、长度查询 (len(sequence))、最小值 (min(sequence)) 和最大值 (max(sequence)) 查询等。
  5. 名字、对象及绑定:

    • 在 Python 中,变量如 a = 1 其中 1 是一个对象,它有自己的内存地址(即 id 号);而 a 是一个标识符,用来引用这个对象。
    • 赋值操作就是将标识符绑定到一个对象上。
    • 当一个对象的引用计数降到 0 时,Python 的垃圾回收机制 (Garbage Collection) 会销毁该对象并回收内存空间。
  6. is==:

    • is 操作符比较两个对象的内存地址是否相同,即它们是否是同一个对象。
    • == 操作符比较两个对象的值是否相等。
    • 比如 a = 3, b = 3.0a is b 是 False 因为 a 和 b 指向不同的对象(内存地址不同),但 a == b 是 True 因为 3 和 3.0 的值相等。
  7. 其他常见的序列操作和函数:

    • sorted(sequence): 返回序列的排序列表。
    • reversed(sequence): 返回序列的逆序迭代器。
    • enumerate(sequence): 返回序列的枚举对象,可用于同时获取索引和值。
    • zip(sequence1, sequence2): 用于并行遍历多个序列,返回一个元组对的迭代器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值