字符串定义
字符串是容器型数据类型, 将'' "" '''''' """"""作为容器标志,容器中的元素全是字符
不可变的(不支持增删改)、有序(支持下标操作)
如:
str1 = 'hello\n123'
str2 = "你好"
str3 = '''thanks
字符释义
python中只有字符的概念,没有对应的数据类型。引号中只有一个元素的字符串可以看成一个字符
字符串又叫字符集
1)字符串中的字符 - 原则上任何可以通过键盘输入或者从其他地方赋值粘贴的所有的符号都可以作为字符
'和健身房'、'shuASSS'、'2378'、'+-===!@&*#@'、'♠'
a.普通字符: 在字符串中能够代表符号本身的字符(没有特殊意义和特殊功能的符号)
b.转义字符: 在字符串中有特殊意义和特殊功能的符号的组合,一般是以\开头的
\n - 换行
' - 表示'本身
" - 表示"本身
\t - 表示一个缩进(tab键)
\ - 表示一个
注意: 所有的转义字符的长度都是1
c.编码字符
2)阻止转义: 在字符串的最前面加r/R可以让当前字符串中所有的转义字符失效(所有的符号在字符串中都表示这个符号本身)
字符编码
计算机不能直接存储字符(符号),只能存储数字;
为了能够存储字符,把每一个字符关联了一个固定的数字(这个固定的数字就是对应的字符的编码)
字符和数字和一一对应关系就是编码表:ASCII码表,Unicode编码表(python)
ASCII码表 - 在计算机中采用一个字节保存一个字符(总共128个字符), 字符包含了所有的字母、数字和美国常用符号
0 ~ 9: 编码值从48开始依次增加
大写字母的编码值 < 小写字母的编码值
大写字母和小写字母不是紧挨着的Unicode编码表是ASCII码表的扩展, 包含了世界上所有的国家、所有的语言对应的符号(总共有65536个符号)
ASCII码: 0 ~ 127
中文编码值范围: 0x4e00 ~ 0x9fa5
使用如:
# 1.编码字符: \u4位16进制编码值
str1 = 'abc\u50ff'
print(str1)
# 2.chr(编码值) - 获取编码值对应的字符
print(chr(97))
num = 0
for x in range(0x4e00, 0x9fa5+1):
print(chr(x), end=' ')
num += 1
if num % 30 == 0:
print()
print()
for x in range(0x0F00, 0x0FFF+1):
print(chr(x), end=' ')
print()
for x in range(0x2400, 0x243F+1):
print(chr(x), end=' ')
print()
# 3.ord(字符) - 获取指定字符对应的编码值
print(hex(ord('张')))
print(hex(ord('三')))
字符串操作
查 - 获取字符 (和列表获取元素的方式一样)
切片、
# 切片
str1 = '\thello Python!'
print(str1[2:]) # ello Python!
print(str1[1:-1:2]) # hloPto
print(str1[:3:-1]) # !nohtyP ol
# 遍历
for x in str1:
print('x:', x)
"""
for 下标,元素 in enumerate(序列):
循环体
"""
print('==========')
for index, item in enumerate(str1):
print(index, item)