day8:总结

1.字符串

1.什么是字符串(str)

"""
1)字符串
字符串是容器型数据类型(序列);以单引号或者双引号作为容器的标志,引号中所有的内容都是字符串的元素
'abc' -> 元素分别是'a','b','c'
特点:不可变,有序(支持下标操作)
2)字符串中的元素
字符串中元素又叫字符(注意:python中有字符概念,但是没有字符类型;长度是1的字符串就可以看成字符)
a.普通字符:字母,数字,各国的文字和符号等(可以直接写到引号中的符号)
'abc','abc123'
b.转义字符:字符串中在一些特点的符号前加\来表示特殊的功能和意义
' - > '
" - > "
\n - > 换行
\ - >
\t - > 按了一个tab键 建议用这种方式表示前面的缩进
"""

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

"""
1)字符编码

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

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

python采用的是Unicode编码表
中文范围 0x4E00-0x9FA5 0x4e00 - 0x9fa5
3)字符编码的相关方法
chr(编码值) - 将编码值转换成字符
ord(字符) - 获取字符对应的编码值
"""

str2 = 'abc \
        \n123'
str2 = 'abc\\n123'
print(str2)

str3 = u'5e00'
print(str3)
# 97 - 122  65 - 90
# for i in range(0x2000,0x2111):
#     print(chr(i),end=' ')

2.字符串的操作

1.获取字符

"""
1.获取字符
str1 = 'hello world!'
1)获取单个字符
print(str[0])
2)字符串切片
str1[:]
切不到的是空串
3)遍历
for char in 'abc':
print(char)
"""

str2 = 'How Are You! Im Fine, THANK YOU!'
num = 0
for char in str2:
    if  97 <= ord(char) <= 122:
        num+=1
print(num)

2.字符串操作

"""

    • 和 *
      字符串1+字符串2 -> 将字符串1和字符串2拼接在一起产生一个新的字符串
      字符串 * N/N * 字符串 -> 字符串重复N次产生一个新的字符串
  1. == , !=
    3)> , < , >=, <=
    只能两个字符串比较大小 - 从前往后找到第一组不相等的字符,比较它们编码值的大小,谁的编码值大那个字符串就大
    '0' <= char <= '9' - 判断是否是数字字符
    'a' <= char <= 'z' - 判断是否是小写字母
    'A' <= char <= 'Z' - 判断是否是大写字母
    'a' <= char <= 'z' or 'A' <= char <= 'Z' - 判断是否是字母

  2. in / not in
    字符串1 in 字符串2 -> 判断字符串2中是否包含字符串1(判断字符串1是否是字符串2的子串)
    str3 = 'how are you'
    print('how' in str3) #True
    5)len,max,min,sorted,str # sorted按字符串的编码值大小排序

注意:转义字符串和编码字符的长度都是1

字符串转换:所有的数据都可以转换成字符串,转换的时候是将数据放在引号中
6)r语法
在字符串的最前面加r或R,可以阻止字符串中所有的转义字符转义
7)格式字符串
在字符串中用格式占位符表示字符串中不确定的部分
a.语法:包含格式占位符的字符 %(数据1,数据2,....) - ()中数据的个数和类型要和前面的格式占位符--对应
b.格式占位符
%s - 字符串
%d - 整数
%.Nf - 浮点数,N控制小数点后小数的位数
%c - 字符 还可以传编码值 程序会将编码值转化成字符
注意:所有的数据都可以使用%s来做个数占位符,所有的数据都可以使用%s来接收
"""

str1 = r'\thow\nare\'you!\u4e00'
print(len(str1))

print('%cbc'%97)

3.字符串的相关方法

1.对齐方式

"""
字符串.center(宽度,填充字符) - 居中
字符串.ljust(宽度,填充字符) - 左对齐
字符串.rjust(宽度,填充字符) - 右对齐
字符串.zfill(宽度) == 字符串.rjust(宽度,0) - 一般用于产生学号等id
"""

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

2.统计子串的个数

"""
字符串1.count(字符串2,[start,end)(默认整个字符串)) - 统计字符串1中从start开始到end结束字符串2出现的次数
字符串1.find()和字符串1.index()的区别,前者没有找到返回-1不会报错,获取子串下标
4.join方法
字符串.join(序列) - 将序列中的元素用字符串连接。产生一个新的字符串,要求序列中的元素都是字符串
字典也可以,只不过是将key值相连
5.替换
字符串1.replace(字符串2,字符串3) - 将字符串1中所有的字符串2都替换成字符串3
字符串1.replace(字符串2,字符串3,N) - 将字符串1中前N个字符串2都替换成字符串3
6.字符串切割
字符串1.split(字符串2) - 将字符串2作为切割点切割字符串1,返回一个列表
str1 = 'how are you ! Im fine,thank you ! and you?'
"""

list1 = ['a','b','c']
print(''.join(list1))
str1 = 'how are you ! Im fine,thank you ! and you?'
print(str1.split('!'))
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 什么是字符串 str 1) 字符串是python提供的容器型数据类型(序列),不可变、有序的。 不可变 - 不支持...
    小逗比的奋斗史阅读 332评论 0 0
  • 1.什么是字符串(str) 1)字符串字符串是容器型数据类型(序列);以单引号或者双引号作为容器的标志(引号中所有...
    举颗凤梨阅读 608评论 0 1
  • 1. 什么是字符串(str) 1.1 字符串 字符串是容器型数据类型(序列); 以单引号或者双引号作为容器的标志,...
    酒煮灬核弹头阅读 265评论 0 0
  • 这周对我收获最大的就是如何组织一场团队建设了。 2018年11月24日我的一个同行朋友给她们公司组织了一次团队建设...
    石头爱湉江阅读 199评论 0 0
  • 我想说,最近很不爽。 不爽一:娱乐圈乌烟瘴气 每天早上,上班来的第一件事,打开电脑,开始工作。 结果,电脑一开,各...
    贝子晨阅读 570评论 5 13