Str字符串的方法:
- 1. 首先创造一个字符串有两种方法
S=”123” or s=name
S1=str(123)
2.首字母变大写的方法capitalize()
>>> s="alex"
>>> s1=s.capitalize()
>>> print(s1)
Alex
3.字符串的casefold()方法—>恢复字符串创建时的原始值
可以通过以下代码敲出来可以看到
#首先创建一个字符串s,让它的首字符变为大写,然后执行casefold()方法,让它变为 原来的样子
>>> s="alex"
>>> s1=s.capitalize()
>>> print(s1)
Alex
>>> s2=s1.casefold()
>>> print(s2)
alex
#让s的全部字母大写赋值给s2,然后s2采用casefold()方法恢复原来的值再赋值给s3
>>> s2=s.upper()
>>> print(s2)
ALEX
>>> s3=s2.casefold()
>>> print(s3)
alex
4.字符串的center()方法:
s.center(width,[,fillchar]) ->str,可以通过用以下演示来理解
#首先创建一个字符串alex,然后采用center()方法,第一个参数width是指定执行完这个方法后的总的一个值的长度,下面长度是20,然后可以看到原来的s的长度为len(s)=4,那么还有16位的长度就由第二个参数”*”来填充,alex占中间的4个位
>>> s="alex"
>>> len(s)
4
>>> print(s.center(20,"*"))
********alex********
5.字符串的count()方法
>>> s="alexalexalex"
#计算字母a在字符串s中出现的次数,第二个参数0是指从s的第一个索引位置开始查找,第三个参数10是指到字符串s的第十个索引指向的位置为止
>>> s.count("a",0,10)
3#结果是a在s中出现了3次
>>> s.count("l",4)#可以看到第三个参数如果没指定就是默认到s的最后一个字母为结束位置
2#结果是2次
>>> s.count("a")#可以看到第二个和第三个参数如果没指定,就是默认整个s内寻找
3#结果是3次
5.字符串的编码encode()和解码decode()方法:
# -*- coding:utf-8-*-
a=”李璐”#创建一个字符串,指定的格式是utf-8
a_unicode=a.decode(“utf-8”)#先把a解码成unicode格式
a_gbk=a_unicode.encode(“gbk”)#再把a_unicode编码成gbk形式
6.字符串格式化方法和format()方法
#1.通过format方法按顺序传递参数实现类似格式化的效果
>>> s="name:{0},age:{1}"
>>> print(s.format("alex","18"))
name:alex,age:18
#2.直接通过%来格式化,%s可以替代一切类型包括字符串、整型等,而%d,%f分别指整型和浮点型数值
>>> s="name:%s,age:%s"%("alex",18)
>>> print(s)
name:alex,age:18
7.index()查找索引方法
S.index(sub[, start[, end]]) -> int #在字符串S中查找字母sub, start和end参数分别指定开始和结束的位置,第二和第三个参数可以不指定,就默认从头到尾寻找,如下:
>>> s="alex"
>>> s.index("a")
0
>>> s.index("l",0,3)
1
8.字符串中的带is的方法,如:
S.isalnum() -> bool #判断字符串是否只包含字母和数字,如果是就返回布尔值True,否则就是False
S.isalpha() -> bool #判断字符串是否只包含字母,如果是就返回布尔值True,否则就是False
S.isdigit() -> bool #判断字符串是否Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字,如果是就返回布尔值True,否则就是False
S.isdecimal() -> bool #判断字符串是否只包含十进制的字符串,如果是就返回布尔值True,否则就是False
S.isspace() -> bool #判断字符串是否只包含空格,如果是就返回布尔值True,否则就是False
S.istitle() -> bool #判断一个字符串的每个词的首个字母是否大写,如果是就返回True,否则返回False,
s.title() 方法就是把字符串变为标题,如下
>>> s="the one"
>>> s.istitle()
False
>>> s1=s.title()
>>> s1.istitle()
True
9.字符串的join()方法:S.join(iterable) -> str #里面的参数必须是可迭代的,如下操作
>>> cha="." #创建一个分隔符句号”.”
>>> s1=("alex","name") #创建一个元组,元组是可迭代的
>>> s2=["alex","name"] #创建一个列表,列表是可迭代的
>>> s3={"k1":"alex","k2":"name"} #创建一个字典,字典是可迭代的
>>> cha_s1=cha.join(s1)
>>> print(cha_s1)
alex.name #可看到最后结果是用句号把元组里的两个元素结合成一个字符串
>>> cha_s2=cha.join(s2)
>>> print(cha_s2)
alex.name
>>> cha_s3=cha.join(s3)
>>> print(cha_s3)
k2.k1
>>> s4=s3.values()
>>> print(s4)
dict_values([‘name‘, ‘alex‘])
>>> cha_s4=cha.join(s4)
>>> print(cha_s4)
name.alex
10.ljust()和rjust()左对齐和右对齐方法:
>>> s="alex"
>>> s.ljust(10,"*")
‘alex******‘
>>> s.rjust(10,"*")
‘******alex‘
11. S.partition(sep) -> (head, sep, tail)
>>> s="alleall"
>>> s.partition("e")
(‘all‘, ‘e‘, ‘all‘)
12. S.replace(old, new[, count]) -> str
>>> s.replace("a","b")#把a替换成b,没有指定次数,就是默认全部a替换成b
‘bllebll‘
>>> s.replace("a","b",2)
‘bllebll‘
>>> s.replace("a","b",3)
‘bllebll‘
13. S.split(sep=None, maxsplit=-1) -> list of strings
>>> s=("name:age:class:school")
>>> s.split(":")
[‘name‘, ‘age‘, ‘class‘, ‘school‘] #以冒号作分隔符,并把结果返回成一个列表
14. startswith(...)和endswith() #分别判断一个字符串是否以给定的参数字母开始和结尾,是就返回True,否则返回False
>>> s="alex"
>>> s.startswith("a")
True
>>> s.endswith("x")
True
15. find()方法 #从字符串s中查找字母a和e,并返回它们的位置
>>> s="alex"
>>> s.find("a")
0
>>> s.find("e")
2
>>> s.find("a",0,3)
0
16.lstrip()、rstrip()、strip()方法
分别是去除字符串左边,右边,和左右两边的空格
>>> s=" alex "
>>> s.lstrip()
‘alex ‘
>>> s.rstrip()
‘ alex‘
>>> s.strip()
‘alex‘