1.字符串
1)什么是字符串(str)
字符是容器型数据类型;将’’、""、""""""、’’’’’'作为容器的标志,里面的每个符号就是字符串的元素
不可变;有序
元素:字符串的元素就是引号中的每一个基本符号。元素又叫字符,字符又分为普通字符和转义字符两种。
str1 = ',groiveoimem'
str2 = "er,kovueij"
str3 = """abc123
qwasjdf
阿斯顿发
"""
str4 = '''
dkhak
askdhf
双方都
'''
print(type(str3), type(str4)) # <class 'str'> <class 'str'>
2) 转义字符
转义字符就是在特定的符号前加\让符号具备特殊的功能或者意义。
\n - 换行,相当于return键
\t - 水平制表符,相当于tab键
’ - 表示一个单引号
" - 表示一个双引号
\ - 表示一个反斜杠
注意:转义字符的长度是1
print('hj8;\n123')
poem = '\t床前明月光,\n\t疑是地上霜。\n\t举头望明月,\n\t低头思故乡。'
print(poem)
# message = 'it's me!' # SyntaxError: invalid syntax
# message = "it's me!" # 方案一
message = 'it\'s me!' # 方案二
print(message)
# message = "I say:"how are you?"" # SyntaxError: invalid syntax
# message = 'I say:"how are you?"'
message = "I say:\"how are you?\""
print(message)
message = 'abc\\n123'
print(message) # abc\n123
file = 'C:\\name\\study\\aa.txt'
print(file) # C:\name\study\aa.txt
3) 字符编码
3.1 字符编码
计算机在存储数据的时候只能存数字(存数字的二进制补码),文本符号是不能直接保存在内存中的,为了能够让计算机存储文本符号,就给每个符号对应一个固定的数字,在保存符号的时候就去保存这个符号对应的数字。每个符号对应的数字就是这个符号的编码值。
3.2 编码表 - 记录每个符号对应的编码值的表
a.ASCII码表:
数字字符在字母的前面,编码值从字符0到字符9依次增加;
所有大写字母在所有的小写字母前面;
大写字母和小写字母之间有间隙;
b.Unicode编码表:
Unicode是ASCII码表的扩展,包含了ASCII码表中所有的符号;
包含了所有国家所有民族的所有语言的符号(万国码);
中文范围:4e00 ~ 9fa5
print('\u4eff') # 仿
# 1)编码字符: \u4位的16进制编码值
print('a\u0061') # aa
c = '类'
print('\u4e00' <= c <= '\u9fa5') # True
print('\u28ef\u283f') # ⣯⠿
3.3 编码相关的函数
a. chr(编码值) - 获取指定编码对应的字符,返回的数据的类型是字符串
print(chr(97)) # a
print(chr(0x4e00)) # 一
print(chr(0x4e01)) # 丁
# for x in range(0x4e00, 0x9fa5+1):
# print(chr(x), end=' ')
# if x % 30 == 0:
# print()
# print('===========================')
# for x in range(0x1800, 0x18AF+1):
# print(chr(x), end=' ')
# print()
# for x in range(0x4dc0, 0x4dff+1):
# print(chr(x), end=' ')
# print()
# 写一个程序将输入的小写字母字符转换成对应的大写字母
p = 'm'
code = ord(p) - 32
print(chr(code))
b. ord(字符) - 获取字符编码值(字符用长度是1的字符串表示)
print(hex(ord('尊'))) # 0x5c0a
print(hex(