day 7 课程总结

day 7 课程总结

集合(set)

​ 1.集合是容器型数据类型,将{}作为容器的标志 {数据1,数据2,数据3,···}

​ 2.可变的(支持增删改查);无序(不支持下标操作)

要求:
  1. 必须是不可变的数据类型
  2. 元素是唯一的
    空集合:set1 = set()
增删改查:

​ 查:
​ 只能遍历
​ 添加:
​ 集合.add() 添加指定元素
​ 集合.updata() 将序列中所有元素添加到集合中
​ 删除:
​ 集合.remove

数学集合运算

交集:&
并集:|
差集:-
对称差集:^ ((a-b)|(b-a))
子集:>=、<=
真子集:>、<

字符串(str)

​ 容器型数据类型,将’’、""、’’’’’’、""""""作为容器标志(每一个符号叫做字符)
​ 不可变(不支持增删改,只能查),有序(支持下标操作)
​ 元素:一切符号都可以作为元素,每一个元素符号叫做字符,分为普通字符,转义字符
​ 空字符串: str1 = ‘’

字符:

​ 普通字符: 在字符串中表示本身的字符
​ 转义字符: 具备特殊意义的符号 (格式:\ + 部分字符)
​ (\n): 换行
​ (\t): 水平制表符(一个Tab键)
​ (’): 单引号
​ ("): 双引号
​ (\): 反斜杠

​ \u4位的十六进制数 编码字符

字符编码

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

​ 常用编码表: ASCII码表、Unicode编码表(Python)

​ 1.ASCII码表
​ ASCII码表只有128个字符(不够用)
​ 在ASCII码表中:数字字符在字母的前面、大写字母在小写字母的前面、大 写字母和小写字母之间有间隙、
​ 数字从0开始连续递增,字母从(a/A)开始连续递增
​ a - 97
​ A - 65

​ 2.Unicode编码表 - 是ASCII码表的扩展,里面包含ASCII码表
​ Unicode编码表中包含了世界上所有的国家所有的民族的所有符号(万国码)
​ 中文编码范围:4e00 ~ 9fa5

程序中直接表示一个16进制数: 加前缀0x/0X

for x in range(0x1800, 0x18AF+1):
     print(chr(x), end=' ')

hex(数字) - 将数字转换成16进制

print(ord('余'), ord('婷'), ord('a'))
print(hex(20313), hex(23159))

编码字符

str1 = 'a\u0061一\u4e00'
print(str1)

判断指定的字符是否是中文字符

ch = '是'
print('\u4e00' <= ch <= '\u9fa5')
print(chr(0x9fa5))
字符操作
  1. 查操作:字符串获取字符和列表获取元素的语法一模一样

    str1 = 'hello world!'
    print(str1[1], str1[-1])
    
    str2 = '\t123\u5fa3abc'
    print(str2[5])
    
    str1 = 'hello world!'
    print(str1[-3:])        # 'ld!'
    print(str1[-5::-1])     # 'ow olleh'
    
    for x in str1:
        print(x)
    
  2. +、*:

    str1 = 'abc'
    str2 = '123'
    print(str1 + str2)      # 'abc123'
    print(str1 * 3)     # 'abcabcabc'
    
  3. 比较大小: >、<、>=、<=

    两个字符串比较大小,比较的是第一对不相等的字符的编码值大小;

    应用:判断字符的性质

    1. 判断字符x是否是数字字符: ‘0’ <= x <= ‘9’
    2. 判断字符x是否是小写字母: ‘a’ <= x <= ‘z’
    3. 判断字符x是否是大写字母: ‘A’ <= x <= ‘Z’
    4. 判断字符x是否是字母:‘a’ <= x <= ‘z’ or ‘A’ <= x <= ‘Z’
    5. 判断字符x是否是中文:’\u4e00’ <= x <= ‘\u9fa5’
  4. in 和 not in

    字符串1 in 字符串2 - 判断字符串1是在字符串2中(判断字符串1是否是字符串2的子串)

    str1 = 'abc123'
    print('a' in str1)      
    print('abc' in str1)    
    print('23' in str1)     
    print('13' in str1)
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值