集合
集合(set)的概念 :
- 集合是容器型数据类型;将{}作为容器的标志,多个元素用逗号隔开:
{元素1,元素2,元素3…}
-
集合是可变的;无序的;
-
元素:不可变,唯一的(和字典中的key要求一样)
ps:
x={} #{}是空字典
y=set() #空集合
集合的增删改查
1)查 - 遍历(输出结果是无序的)
set1={10,20,31,90}
for x in set1:
print(x)
2)增
集合.add(元素) - 在集合中添加元素
set1.add(100)
集合.update(序列) -将序列中所有元素添加到集合中
set1.update('abc')
3)删
集合.remove(元素) -删除指定元素,如果元素不存在会报错
set1.remove(100)
集合.discard(元素) -删除指定元素,如果元素不存在不会报错
set1.discard('a')
4)改 -无法修改元素
数学集合运算
python中的集合支持数学集合运算:子集(>,<)、真子集(>=,<=)、并集(|)、
交集(&)
1)子集
print({1,2,3}>{1,2}) #True
2)真子集
print({1,2,3}>={1,2,3}) #True
3)并集
set1={1,2,3}
set2={5,6,1}
print(set1|set2) #{1, 2, 3, 5, 6}
4)交集
set1={1,2,3}
set2={5,6,1}
print(set1&set2) #{1}
5)差集
set1={1,2,3}
set2={5,6,1}
print(set1-set2) #{2, 3}
6)对称差集
set1={1,2,3}
set2={5,6,1}
print(set1^set2) #{2, 3, 5, 6}
字符
1)普通字符:包含所有的符号,例如:数字、字母、中文、各种图形符号等。
2)转义字符:和\结合后具有特殊功能和特殊意义的字符,就是转义字符。(转义字符不是python中的概念)
\n - 换行
\t - 一个水平制表符(相当于按一次tab键)
\’ - 一个单引号字符
" - 一个双引号字符
\ - 一个反斜杠字符
\u4位的十六进制数 - 编码字符
注意:任何一个转义字符的长度是1
python在字符串的最前面加r/R,可以让所有转义字符的功能消失
字符串
定义:
- 字符串是容器型数据类型;以’‘或者 “” 或者’’’ ‘’’ 或者 “”" “”" 作为容器标志,里面多个字符(任意符号)
- 不可变的(不支持增删改);
- 字符串的元素:字符串的每个基本单元,字符(任何符号都可以)
获取字符
- 字符串获取字符和列表获取元素的方法一样
str1='afafvsv'
print(str1[2])
2.chr函数
chr(函数) - 获取编码值对应的字符
ord函数
ord(字符) - 获取字符的编码值
比较运算
两个字符串比较大小比较的是第一对不相等的字符的编码值大小
判断是否是小写字母:'a'<=x<='z'
判断是否是大写字母:'A'<=x<='Z'
判断是否是字母:'a'<=x<='z' or 'A'<=x<='Z'
判断是否是数字:'0'<=x<='9'
判断是否是中文字符:'\u4e00'<=x<='\u9fa5'
字符编码
1)字符编码
为了能够让计算机存储字符,我们给每个字符关联一个具体的数字,在需要存储字符的时候就存储字符对应的数字。
每个字符对应的数字就是字符的编码值。
2)编码表
保存字符和数字的一一对应关系的表就是字符编码表,常用的字符编码表有两种:ASCII码表、Unicode编码表
-
ASCII码表:采用1个字节对128个字符进行编码,其中包括常用的英文符号、数字和字母。其他数字的编码在字母的编码的前面,大写字母的编码在小写字母编码的前面,
大小写字母的编码不连续 -
Unicode编码表:叫万国码,包含了世界上所有国家所有民族的所有语言的符号。前128个字符就是ASCII码表中的字符
其中中文的编码范围是4e00~9fa5