2019-07-31 day-08总结

字符串

一.字符串

1.什么是字符串(str)

1)字符串
字符串是容器型数据类型;以单引号或者双引号作为容器的标志,引号中所有的内容都属于字符串的元素。
特点:不可变,有序(支持下标操作)

注意:python中三个单引号或者三个双引号引起来的也是字符串,这种字符串在字符串内部可以直接按回车对字符串进行换行

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

a.普通字符:字母、数字、各国的文字和符号等(可以写在引号中的符号)

b.转义字符:字符串中在一些特定的符号前加\来表示特殊功能和意义
\'  -  '
\"  -  "
\n  -  换行
\\  -  \
\t  -  tab

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

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

2)ASCII码表和Unicode编码表
ASCII码表是由美国国家标准制定的专门根据美国符号进行编码的,里面只包含一些特殊符号、字码和数字
(不包含中文、日语、韩语等)

python采用的是unicode编码表
注:中文范围 4E00 - 9FA5:Unicode编码表是对ASCII码表的扩展,包含了世界上所有国家所有语言的符号(又叫万国码)

3)字符编码相关方法
chr(编码值) - 将编码值转换成字符
ord(字符) - 获取字符对应的编码值(十进制)

二.字符串操作

1.获取字符 和列表获取元素一样
str1 = 'hello world!'

1)获取单个字符
print(str1[0]) # 'h'

2)字符串切片

3)遍历

for char in 'abc':
    print(char)
#练习:统计一个字符串中小写字母的个数
str2 = 'How Are You! Im Five, THANK YOU'
count = 0
for char in str2:
    if  'a' <= char <= 'z':
        count += 1
print(count)

2.字符串操作
1)+ 和 *
字符串1 + 字符串2  ->  将字符串1和字符串2拼接在一起产生一个新的字符串
字符串 * N / N * 字符串   ->  字符串重复N次产生一个新的字符串

2)==, !=

3)>, <, >= , <=
只能两个字符串比较大小  -  从前往后找到第一组不想等的字符,比较他们编码值的大小

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

5)len, max, min, sorted, str
注意:转义字符串和编码字符的长度都是1
字符串转换:所有的数据都可以转换成字符串,转换的时候是将数据放在引号中

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

7)格式字符串
在字符串中用格式占位符表示字符串中不确定的部分

a.语法:包含格式占位符的字符 %(数据1,数据2...) -  ()中数据的个数和类型要和前面格式占位符一一对应

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

三.字符串相关方法

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

str1 = 'abc'
print(str1.center(10, '+'))
print(str1.ljust(10))
print(str1.rjust(10))
print(str1.zfill(10))

2.统计字串的个数
字符串1.count(字符串2) -   统计字符串1中字符串2出现的次数
print(str1.count(('you',0,12)))     # 可以指定范围

3.获取字串下标
字符串.find() 和 字符串.index() # 两者作用相同,区别是find找不到的时候返回-1,而index找不到会直接报错

4.join方法
字符串.join(序列) - 将序列中的元素用字符串连接产生一个新的字符串
要求序列中的元素是字符串,如果是字典,key是字符串
new_str = '+'.join('123')

注意:字典连接的是键,数字序列不能连接

5.替换
字符串1.replace(字符串2, 字符串3)  -   将字符串1中所有的字符串2都替换成字符串3
字符串1.replace(字符串2, 字符串3, N)  -   将字符串1中的前N个字符串2都替换成字符串3

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

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

相关阅读更多精彩内容

  • 1.什么是字符串(str) 1)字符串是容器型数据类型(序列),以单引号和双引号作为容器标志,引号中的所有内容都是...
    HuangXiongjin阅读 321评论 0 0
  • 一、字符串基础 1. 什么是字符串(str) 1)字符串 字符串是容器型数据类型(序列) 以单引号或者双引号作为容...
    Lis_reak阅读 431评论 0 0
  • day8-字符串 一.字符串 1.什么是字符串(str) (1)字符串字符串是容器型数据类型(序列),以单引号或者...
    晨凡_2019阅读 271评论 0 0
  • 字符串 1.什么是字符串(str) 字符串是容器型数据类型(序列);以单引号或者双引号作为容器的标志,引号中所有的...
    zero_Staynight阅读 176评论 0 0
  • A:反思自己今天是否做到先听后说。 M:在用电话沟通时,还说很急切的说。 B:加深听的意识,要在说之前先学会听。 ...
    有只熊爱冬眠阅读 80评论 0 0

友情链接更多精彩内容