Day8总结-2019/07/31

一.字符串的基础知识

1.字符串

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

2.字符串中的元素

字符串中的元素又叫字符,包括:
a.普通字符:字母、数字、各国文字和符号等。
b.转义字符 :字符串中在一些特定的符号前加\来表示特殊的功能和意义。如:\n, \t, \
c.编码字符:\u4位16进制数。

二.字符串的基本操作

1.获取元素 - 和列表一样

a.获取单个元素:字符串[下标]

b.字符串切片:
例如:字符串[2:6:2]

c.遍历:
for char in 字符串:
print(char)

2.字符串操作

1)+ / *
字符串1+字符串2 -> 将字符串1和字符串2拼接在一起产生一个新的字符串。
字符串 * N / N * 字符串 -> 字符串重复N次产生一个新的字符串。
2)==, !=
长度元素和顺序都相等时才相等。
3)>, <, >=, <=
只能两个字符串比较大小 - 找到从前往后第一组不相等的字符,比较他们编码值的大小.

'0' <= char <= '9' - 判断是否是数字字符
'a' <= char <= 'z' - 判断是否是数小写字母
'A' <= char <= 'Z' - 判断是否是数大写字母
'a' <= char <= 'z' or 'A' <= char <= 'Z' - 判断是否是字母

4)in / not in
字符串1 in 字符串2 -> 判断字符串2中是否包含字符串1(判断字符串1是否是字符串2的子串)。
5)len(),max(),min(),sorted(),str()

字符串转换:所有的数据都可以转换成字符串,转换的时候是将数据放在引号中。

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

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

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

b.格式占位符

%s - 字符串
%d - 整数
%.Nf - 浮点数,N控制小数点后小数的位数
%c - 字符(可以将数字转换成字符)

注意:所有的数据都可以使用%s来做个数占位符;所有的数据都可以使用%s来接收。

三.字符串的相关方法

1.对齐方式

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

str1 = 'abc'
print(str1.center(10, '='))     # ===abc====居中
print(str1.ljust(10, '='))      # abc=======左对齐
print(str1.rjust(10, '='))      # =======abc右对齐
print(str1.zfill(10))           # 000000abc

2.统计字符串的个数

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

str1 = 'how are you! Im fine,thank you! and you?'
print(str1.count('you'))        # 3
print(str1.count('you', 0, 12))   # 1

3.获取子串下标

str1 = 'how are you! Im fine,thank you! and you?'
print(str1.find('you'))        # 8
print(str1.index('you'))        # 8
print(str1.find('you1'))        # -1
# print(str1.index('you1'))        # 报错

4.join方法

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

new_str1 = '+'.join('123')
print(new_str1)             # '1+2+3'

5.替换

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

str1 = 'how are you! Im fine,thank you! and you?'
new_str1 = str1.replace('you', 'YOU')
new_str2 = str1.replace('you', 'me', 2)
print(new_str1)
print(new_str2)

6.字符串切割

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

str1 = 'how are you! Im fine,thank you! and you?'
str_list = str1.split(' ')
print(str_list)
str_list = str1.split('!')
print(str_list)

7.字符串.capitalize()

将字符串的第一个字符转换成大写。

8.字符串.endswith(字符串或元素,beg=M,end=N)

如果字符串含有指定的后缀返回 True,否则返回 False。M、N为指定起始、终止范围。

9.字符串.expandtabs(tabsie=N)

把字符串中的 tab 符号转为空格,tab 符号默认的空格数是N。

你可能感兴趣的:(Day8总结-2019/07/31)