Python 字符串相关操作

时间:2023-03-09 02:15:05
Python 字符串相关操作
# 1   * 重复输出字符串
print('hello'*2) # 2 [] ,[:] 通过索引获取字符串中字符,这里和列表的切片操作是相同的,具体内容见列表
print('helloworld'[2:]) # 3 in 成员运算符 - 如果字符串中包含给定的字符返回 True
print('el' in 'hello') # 4 % 格式字符串
print('alex is a good teacher')
print('%s is a good teacher'%'alex') # 5 + 字符串拼接
a=''
b='abc'
c=''
d1=a+b+c
print(d1)
# +效率低,该用join
d2=''.join([a,b,c])
print(d2)

join方法是把''中间的内容插入到后面的字符串中间

内置方法:

center:  string.center(self, width, fillchar=None)     使原字符串居中,两遍填充总数为width的字符,填充的字符为fillchar中的内容

count: string.count(str, beg=0, end=len(string))  返回 str 在 string 里面出现的次数,使用 beg 或者 end可指定范围

find:     string.find(str, beg=0, end=len(string))   检测 str 是否包含在 string 中,可用 beg 和 end 指定范围,此时若不在指定范围里但是在字符串中返回-1

format: string.format(self, *args, **kwargs)    格式化输出的另一种方式,字符串中有用{}时,可用此命令代替{}和其中的内容

lower:  string.lower()                                          把字符串中的大写字母转化为小写字母

replace: string.replace(str1, str2, num=string.count(str1))    把 string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次

split:   string.split(str="", num=string.count(str))   以 str 为分隔符切片 string,如果 num有指定值,则仅分隔 num 个子字符串,str不会出现在输出中

startswith: string.startswith(obj, beg=0,end=len(string))  检查字符串是否是以obj 开头,是则返回 True,否则返回 False。如果beg和end指定值,则在指定范围内检查

strip:  string.strip([obj])                 在 string 上执行 lstrip()和 rstrip(),即删除左边和右边的空格(不可见字符)

upper:  string.upper()                   把字符串中的小写字母转化为大写字母

 e = ' hEllo wOrld {me} '
print(e.center(30, '*'))
print(e.count('l'))
print(e.count('l', 3, 10))
print(e.find('d'))
print(e.find('d', 3, 9))
print(e.format(me='chen'))
print(e.lower())
print(e.replace('l', 'Z'))
print(e.replace('l', 'Z', 2))
print(e.split('l'))
print(e.split('l',2))
print(e.startswith('h'))
print(e.strip())
print(e.upper())

输出为

 ****** hEllo wOrld {me} ******
3
2
11
-1
hEllo wOrld chen
hello world {me}
hEZZo wOrZd {me}
hEZZo wOrld {me}
[' hE', '', 'o wOr', 'd {me} ']
[' hE', '', 'o wOrld {me} ']
False
hEllo wOrld {me}
HELLO WORLD {ME}