day8字符串

1.什么是字符串(str)

字符串是容器数据类型(序列); 以单引号或者双引号作为容器的标志,引号中所有的内容都属于字符串的元素
'abc' -> 元素分别是'a', 'b', 'c'
特点:不可变,有序(支持下标操作)

2)字符串的元素
字符串中的元素又叫字符(注意:python中有字符的概念,但是没有字符类型;长度是1的字符串就可以看成是字符)

a.普通字符:字母、数字、各国的文字和符号等(可以直接写在引号中的符号)
'abc', 'abc123', '-+%中文'

b.转义字符:在字符串中在一些特定的符号前加\来表示特殊的功能和意义

' - '
" - "
\n - 换行
\ -
\t - tab键(制表符)

"""

c.编码字符:\u 4位16进制数 - 将4位16进制数对应的编码值转换成字符

"""
1)字符编码
计算机只有直接存储数字的能力,不能存储字符;
当需要用计算机存储字符的是,实质存的是字符对应的数字,这个数字就是字符在计算机中的编码
每一个字符和数字对应的关系叫编码表

2)ASCII码表和Unicode编码表
ASCII码表是由美国国家标准制定的专门针对美国富豪进行编码的,里面只包含一些特殊富豪、字母和数字,不包括中文

python采用的是Unicode编码表:Unicode编码表是对ASCII表的扩展,包含了世界上所有国家所有语言的符号(又叫万国码)

中文范围:0x4E00 ~0x9FA5

3)字符编码相关方法
chr(编码值) - 将编码值转换成字符

ord(字符) - 获取字符对应的编码值

1.获取字符

str1 = 'hello world!'
1)获取单个字符
print(str1[0])

2)字符串切片
print(str1[2:6:2]) #lo

3)遍历
for char in 'abc':
print(char)

4)in /not in

字符串1 in 字符串2 -> 判断字符串2中是否包含字符串1(判断字符串1是否是字符串2的字串)

5)len,max,min,sorted,str

6)语法

在字符串的最前面加r或R,可以阻止字符串中所有的转义字符转义

7)格式字符串

在字符串中用格式占位符表示字符串中不确定的部分
a·语法:包含格式占位符的字符 % (数据1,数据2,。。。) - ()中数据的个数和类型要和前面格式占位符一一对应

b·格式占位符
%s - 字符串
%d - 整数
%.Nf - 浮点数,N控制小数点后小数的位数
%c - 字符 (可以将数字转换成字符)
注意:1.所有的数据都可以用%s来做个数占位符 2.所有的数据都可以使用%s来接收

1.对齐方式

字符串.center(宽度, 填充字符=' ') - 居中
字符串.ljust(宽度, 填充字符= ' ') - 左对齐
字符串.rjust(宽度, 填充字符= ' ')
字符串.zfill(宽度) == 字符串.rjust(宽度, 0)

2.统计子串的个数

字符串1.count(字符串2) - 统计字符串1中字符串2出现的次数

str1 = 'How Are you! Im Fine, THANK you'
print(str1.count('you'))

print(str1.count('you', 0, 12))#在下标是[0,12)范围内统计you的个数

3获取子串下标

print(str1.find('you'))
print(str1.index('you'))

4.join方法

字符串.join(序列) - 将序列中的元素用字符串连接产生一个新的字符串

要求序列中的元素必须是字符串,如果是字典key是字符串

new_str1 = '+'.join('123')
print(new_str1)

5.替换

字符串1.replace(字符串2, 字符串3) - 将字符串1中所有的字符串2都替换成字符串3
字符串1.replace(字符串2, 字符串3,N) - 将字符串1中前N个字符串2替换成字符串3
str1 = 'How Are you! Im Fine, THANK you'
new_str1 = str1.replace('you', 'YOU')
print(new_str1)

6.字符串切割

字符串1.split(字符串2) - 将字符串2作为切割点切割字符串1,返回一个列表

str1 = 'how are you! Im Fine, thank you! and you'

str_list = str1.split(' ')
print(str_list)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容