python学习(八)集合和字符串

集合

  1. 什么是集合

    集合是容器类型数据,将{}作为容器的标志,里面多个元素用逗号隔开:{数据1,数据2,数据3…}
    是可变数据类型(支持增删改)
    是无序的(不支持下标)
    空集合: set(),类型为set,长度为0

  2. 集合中元素的要求:

    1. 元素不可重复,元素是唯一的;
    2. 不可变类型的数据
  3. 集合的增删改查

    1. 查: 只能遍历
      for 变量 in 集合:使用for循环遍历无序序列的时候,系统在遍历之前会自动将无序序列转换成列表,然后在进行遍历

    2. 增 :

      1. 集合.add(元素) : 添加指定元素到集合中
      2. 集合.update(序列) :将序列中所有元素都添加到集合中
    3. 删:

      1. 集合.remove(元素) :删除集合中的指定元素,不存在会报错(KeyError)
      2. 集合.discard(元素) :删除集合中的指定元素,不存在不会报错
      3. 集合.pop() :取出任意元素
  4. 数学集合运算:python中使用的集合,和数学集合是相同的,并且·支持·数学集合运算

    1. 交集:intersection()& 等价 : 获取两个集合的公共部分的元素
    2. 并集:union()| 等价 : 将两个集合合并起来
    3. 差集:difference()- 等价 : 获取前一个集合取出公共部分的元素
    4. 对称差集:symmetric_difference()^ 等价 : 获取两个集合中去除公共部分的元素
    5. 子集:>=<=
    6. 真子集:><
      1. 集合1 > 集合2 : 判断集合2是否是集合1的真子集
      2. 集合1 >= 集合2 : 判断集合2是否是集合1的子集
      3. 集合2 > 集合1 : 判断集合1是否是集合2的真子集
      4. 集合2 >= 集合1 : 判断集合1是否是集合2的子集

字符串

  1. 什么是字符串

字符串是容器数据类型,以""''''''''""""""作为容器的标志,引号里面的一个符号都是一个字符串的元素(字符串的元素叫字符)
不可变类型:(不支持增删改)
有序的:(支持下标操作)
字符串的元素:任何符号都可以作为字符串的元素,字符串的元素叫字符
字符:转义字符和普通符号
空串:str = ''

  1. 字符:字符串中的每一个独立的元素就是一个字符

    1. 转义字符:具备特殊功能或特殊意义的字符,所有的转义字符的通用格式:\X、\xxxx

      1. 转义字符是通过\普通字符构成的,但是不是所有的普通字符前加\都可以变成转义字符
        \n   --  换行
        \t   --  水平制表符
        \'   --  一个单引号
        \"   --  一个双引号
        \\   --  一个反斜杠
        \r   --   回车
        \b   -- 退格,会覆盖最后一个字符 
        \u4位16进制数  --  编码字符
        # 16进制数   --   每一位上的数可以是0-9或者是a-f(A-f)
        所有的转义字符长度都是1
        
      2. 程序中直接表示16进制数,直接加前缀0x
    2. 普通字符:在字符串中表示符号本身的字符即使普通字符

  2. 字符串的常用操作

    1. 查:和列表获取元素的方法相同
  3. 相关操作

    1. +*
    2. 比较大小:><>=<=
      两个字符串直接比较大小,比较的是第一对不相等的字符的编码值大小
      应用:判断字符的性质
      1. 判断字符是否是数字字符:’0‘ <= X <= ‘9’
      2. 判断字符是否是小写字母:’a‘ <= X <= ‘z’
      3. 判断字符是否是大写字母:’A‘ <= X <= ‘Z’
      4. 判断字符是否是字母:’A‘ <= X <= ‘Z’ or ’a‘ <= X <= ‘z’
      5. 判断字符是否是中文:’\u4e00’ <= x <= ‘\u9fa5’
      6. in 和 not in :判断字符串是否在另一个字符串中 – 判断

计算机存储原理

  1. 计算机存储数据的原理
    计算机能够直接存储的数据只有数字、存数字的时候保存的是数字的补码
    如果想要将非数字数据保存到计算机中、存储的时候一定会先将数据转换成数字
    如果需要存储的是文字,计算机会保存这个文字符号对应的编码值

  2. 字符编码
    每个文字符号(字符)在计算机中都对应一个固定的数字,这个数字就是这个符号的编码值

  3. 字符编码表:记录符号和数字对应关系的表
    常见的编码表:ASCII表\Unicode字码表
    1.ASCII码只有128个字符(不够用)
    ASCII 码中:数字字符在字母的后面,大写字母在小写字母的前面,大写字母和小写字母之间有间隙
    数字从0开始连续递增,字母从(a/A)开始逐渐递增 a -- 97 、A -- 65 、 数字48-57
    2.unicude子码表:是ASCII的扩展,里面包含ASCII码表
    Unicode编码表中包含了世界上所有的国家所有的民族的所有符号(万国码
    中文范围4e00 ~ 9fa5

  4. 编码值在Python中的应用

    1. chr():chr(编码值) – 获取编码值对应的字符;编码值 - 整数
    2. ord():ord(字符) – 获取字符对应的编码值;字符 - 长度为1的字符串
    3. hex():hex(数字) – 将数字转换成16进制
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乌拉的故事

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值