Day-9字符串
1、字典相关操作
字典不支持“+、*、>、<、>=、<="
in和not in - 键 in 字典(字典中是否存在指定的键)
d1 = {‘a’: 10, ‘b’: 20, ‘c’: 30}
print(10 in d1) False
print(‘a’ in d1) True
相关函数
sum、max、min、sorted这些函数都支持字典但是在操作的时候都是针对键
01)len
print(len(d1)) 3
2)字典相关的类型转换
d1 = {‘a’: 10, ‘b’: 20, ‘c’: 30}
a.将字典转换成其他容器 - 会将字典的所有键作为新的序列中的元素
print(list(d1)) [‘a’, ‘b’, ‘c’]
b.将其他容器转换成字典
dict(数据) - 将指定数据转换成字典
数据的要求:1.数据本身是一个序列
2.序列中的元素必须是有且只有两个元素的小序列,并且第一个元素是不可变的**
list1 = [‘ab’, ‘cd’, ‘12’]
print(dict(list1)) {‘a’: ‘b’, ‘c’: ‘d’, ‘1’: ‘2’}
list2 = [(10, 20), (100, 200), ‘ab’]
print(dict(list2)) {10: 20, 100: 200, ‘a’: ‘b’}
3.字典相关方法
-
字典.clear()
-
字典.copy()
-
items、keys、values
d1 = {‘a’: 10, ‘b’: 20, ‘c’: 30}
字典.keys() - 获取字典所有的键,以一个序列返回值
print(d1.keys()) dict_keys([‘a’, ‘b’, ‘c’])
字典.values() - 获取字典中所有的值,返回一个序列
print(d1.values()) dict_values([10, 20, 30])
字典.items() - 将字典中的键值对转行一个元组,产生一个新的序列
print(d1.items()) dict_items([(‘a’, 10), (‘b’, 20), (‘c’, 30)])
for key, value in d1.items():
print(key, value)
- 字典1.update(字典2) - 将字典2中所有的键值对都添加到字典1中
注意:字典2可以是任何能转换成字典的序列
d1 = {‘a’: 10, ‘b’: 20, ‘c’: 30}
d1.update({‘aa’: 100, ‘bb’: 200})
print(d1) {‘a’: 10, ‘b’: 20, ‘c’: 30, ‘aa’: 100, ‘bb’: 200}
2、什么是字符串(str)
是容器型数据类型;将’‘或者""(’‘’‘’'、“”“”“”)作为容器的标志,里面的每一个符号就是字符串中的每个元素
不可变的(不支持增删改)、有序的(支持下标)
元素:引号中的每个独立的符号都是字符串中的元素,生活中的任何文字符号都可以作为字符串的元素,
包括:数字(012…)、字母(abc…)、中文、日语、朝鲜语、…、表情)
str1 = ‘abc\n123’
str2 = “abc10”
** 多行字符串:字符串内容可以直接换行**
str3 = ‘’‘abc
123’‘’
str4 = “”“abc
123"”"
str1 = ‘[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ywrihAVP-1654478530472)(file:///C:\Users\dell\AppData\Roaming\Tencent\QQTempSys\9KCFSM89{3Y8HGC2GZPT0~B.png)]A’
print(str1, type(str1), len(str1))
空串
str2 = ‘’
str3 = “”
print(len(str2), len(str3))
引号中间有空格不是空串
str2 = ’ ’
print(len(str2))
3、字符
字符串中的元素就叫字符
字符串中的字符分为两类:普通字符和转义字符
\ 1)普通字符 - 在字符串中表示符号本身的字符就是普通字符
str1 = ‘ab\c17823\换手机号)’
print(str1)
2)转义字符 - 在字符串中表示的不是符号本身的字符
转义字符:在指定的符号前面加一个\就具备了特殊功能或者特殊意义的字符
\n - 换行
\t - 水平制表符(按一个tab键)
’ - 表示一个普通的单引号
" - 表示一个普通的双引号
\ - 表示一个普通的反斜杠
str1 = ‘abc\n123’
print(str1)
str2 = ‘\t窗前明月光,\n\t疑是地上霜。\n\t举头望明月,\n\t低头思故乡。’
print(str2)
str3 = ‘It’s me’
str4 = “It’s me”
print(str3, str4)
str1 = “1’30"”
print(str1)
str5 = ‘C:\programs\test\abc\bin\demo.txt’
print(str5)
str1 = ‘abc\n123’
print(str1)
字符串**
python中的字符串的最前面可以加r或R,来让字符串中所有的的转义字符功能消失(r可以让字符串中所有的字符都变成普通字符)**
str5 = R’C:\programs\test\abc\bin\demo.txt’
print(str5)
2.字符编码 - 将字符转换成数字然后再保存到计算机中
1)编码值 - 每一个文字符号都对应一个固定的数字,这个数字就是这个符号的编码值
2)编码表 - 保存每个符号和数字之间的对应的关系
ASCII码表
txt’
print(str5)
2.字符编码 - 将字符转换成数字然后再保存到计算机中
1)编码值 - 每一个文字符号都对应一个固定的数字,这个数字就是这个符号的编码值
2)编码表 - 保存每个符号和数字之间的对应的关系
ASCII码表
Unicode编码表