print()
字符串输出
示例:
name = 'Tom'
print('名字是' + name) #名字是Tom
print('名字是%s' % name) #名字是Tom
print(f'名字是{name}') #名字是Tom
input()
字符串输入
示例:
input1 = input() #输入10
input2 = input('提示用户输入信息') #输入20
print(input1) #10
print(input2) #20
切片
切片是指对操作的对象截取其中一部分的操作。字符串,列表,元组都支持切片操作。
语法:
序列[开始位置下标:结束位置下标:步长]
注意:
- 不包含结束位置下标对应的数据,正负整数均可。(区间左闭右开)
- 步长是选取间隔,正负整数均可,默认步长为1。
示例:
str = '0123456789'
print(str) #0123456789
print(str[2]) #2
print(str[2:10:1]) #23456789
print(str[2:10:2]) #2468
print(str[2:10]) #23456789------步长默认为1
print(str[:10:2]) #02468---------开始默认从0开始
print(str[::2]) #02468---------结束默认到最后
print(str[:]) #0123456789----开始和结束都不写,则选取所有
print(str[::-1]) #9876543210----如果步长为负数,表示倒序选取
print(str[-12:-1]) #012345678-----下标-1表示最后一个数据,依次向前类推
print(str[-12:-1:-1]) #''---------方向与步长方向相反则输出空
print(str[-1:-12:-1]) #9876543210
find()
检测某个子串是否包含在这个字符串中,如果包含则返回这个子串第一次出现开始的位置下标,否则则返回-1。
语法:
字符串序列.find(子串,开始位置下标,结束位置下标)
注意:开始和结束位置下标可以省略,表示在整个字符串序列中查找。
示例:
str = 'Hello world Python!'
find1 = str.find('o')
find2 = str.find('o',5,20)
find3 = str.find('m')
print(find1) #4
print(find2) #7
print(find3) #-1
index()
检测某个子串是否包含在这个字符串中,如果包含则返回这个子串第一次出现开始的位置下标,否则则报异常。
语法:
字符串序列.index(子串,开始位置下标,结束位置下标)
注意:开始和结束位置下标可以省略,表示在整个字符串序列中查找。
示例:
str = 'Hello world Python!'
index1 = str.index('o')
index2 = str.index('o',5,20)
index3 = str.index('m') #ValueError: substring not found
print(index1) #4
print(index2) #7
#print(index3)
rfind()
从右侧开始检测某个子串是否包含在这个字符串中,如果包含则返回这个子串第一次出现开始的位置下标,否则则返回-1。
语法:
字符串序列.rfind(子串,开始位置下标,结束位置下标)
注意:开始和结束位置下标可以省略,表示在整个字符串序列中查找。
示例:
str = 'Hello world Python!'
rfind1 = str.rfind('o')
rfind2 = str.rfind('o',5,20)
rfind3 = str.rfind('m')
print(rfind1) #16
print(rfind2) #16
print(rfind3) #-1
rindex()
检测某个子串是否包含在这个字符串中,如果包含则返回这个子串第一次出现开始的位置下标,否则则报异常。
语法:
字符串序列.rindex(子串,开始位置下标,结束位置下标)
注意:开始和结束位置下标可以省略,表示在整个字符串序列中查找。
示例:
str = 'Hello world Python!'
rindex1 = str.rindex('o')
rindex2 = str.rindex('o',0,5)
rindex3 = str.rindex('m') #ValueError: substring not found
print(rindex1) #16
print(rindex2) #4
#print(rindex3)
count()
返回某个子串在字符串中出现的次数。
语法:
字符串序列.count(子串,开始位置下标,结束位置下标)
注意:开始和结束位置下标可以省略,表示在整个字符串序列中查找。
示例:
str = 'Hello world Python!'
count1 = str.count('o')
count2 = str.count('o',5,20)
count3 = str.count('m')
print(count1) #3
print(count2) #2
print(count3) #0
replace()
替换。
语法:
字符串序列.replace(旧字符串,新字符串,替换次数)
注意:替换次数如果超出字串出现次数,则替换次数为该字串出现次数。
示例:
str1 = 'Hello world Python!'
replace = str1.replace('o', '*')
print(str1) #Hello world Python!
print(replace) #Hell* w*rld Pyth*n!
注意:字符串类型的数据修改的时候不会改变原有字符串。
split()
安装指定字符分割字符串。
语法:
字符串序列.split(分割字符,num)
示例:
str1 = 'Hello world Python!'
split1 = str1.split(' ')
split2 = str1.split(' ',1)
print(str1) #Hello world Python!
print(split1) #['Hello', 'world', 'Python!']
print(split2) #['Hello', 'world Python!']
注意:
- num 表示的是分割字符出现的次数,即分割之后返回数据的个数为 num+1 个。
- 如果分割字符是原有字符串中的子串,则分割后丢失该子串。
join()
用一个字符或子串合并字符串,即将多个字符串合并为一个新的字符串。
语法:
字符或子串.join(多字符串组成的序列)
示例:
splitStr = ['Hello', 'world', 'Python!']
joinStr = ' '.join(splitStr)
print(splitStr) #['Hello', 'world', 'Python!']
print(joinStr) #Hello world Python!
capitalize()
将字符串第一个字符转换成大写。
示例:
str1 = 'Hello world Python!'
print(str1.capitalize()) #Hello world python!
注:capitalize()函数转换后,只将字符串第一个字符大写,其他的字符全都小写。
title()
将字符串每个单词首字母转换成大写。
示例:
str1 = 'Hello world Python!'
print(str1.title()) #Hello World Python!
lower()
将字符串中大写转小写。
示例:
str1 = 'Hello world Python!'
print(str1.lower()) #hello world python!
upper()
将字符串中小写转大写。
示例:
str1 = 'Hello world Python!'
print(str1.upper()) #HELLO WORLD PYTHON!
lstrip()
删除字符串左侧空白字符。
示例:
str1 = ' Hello '
print("'"+str1.lstrip()+"'") #'Hello '
rstrip()
删除字符串右侧空白字符。
示例:
str1 = ' Hello '
print("'"+str1.rstrip()+"'") #' Hello'
strip()
删除字符串两侧空白字符。
示例:
str1 = ' Hello '
print("'"+str1.strip()+"'") #'Hello'
ljust()
返回一个原字符串左对齐,并使用指定字符==(默认空格)==填充至对应长度的新字符串。
语法:
字符串序列.ljust(长度,填充字符)
示例:
str1 = 'Hello'
print("'"+str1.ljust(20)+"'") #'Hello '
print("'"+str1.ljust(20,'*')+"'") #'Hello***************'
rjust()
返回一个原字符串右对齐,并使用指定字符==(默认空格)==填充至对应长度的新字符串。
语法:
字符串序列.rjust(长度,填充字符)
示例:
str1 = 'Hello'
print("'"+str1.rjust(20)+"'") #' Hello'
print("'"+str1.rjust(20,'*')+"'") #'***************Hello'
center()
返回一个原字符串居中对齐,并使用指定字符==(默认空格)==填充至对应长度的新字符串。
语法:
字符串序列.center(长度,填充字符)
示例:
str1 = 'Hello'
print("'"+str1.center(20)+"'")
print("'"+str1.center(20,'*')+"'")
startswith()
判断字符串是否以指定子串开头,是则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内判断。
语法:
字符串序列.startswith(字串,开始位置下标,结束位置下标)
示例:
str1 = 'Hello World'
str2 = 'He'
str3 = 'Hes'
print(str1.startswith(str2)) #True
print(str1.startswith(str2,3,10)) #False
print(str1.startswith(str3)) #False
endswith()
判断字符串是否以指定子串结尾,是则返回 True,否则返回 False。如果设置开始和结束位置下标,则在指定范围内判断。
语法:
字符串序列.endswith(字串,开始位置下标,结束位置下标)
示例:
str1 = 'Hello World'
str2 = 'ld'
str3 = 'Hes'
print(str1.endswith(str2)) #True
print(str1.endswith(str2,3,10)) #False
print(str1.endswith(str3)) #False
isalpha()
如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False。
示例:
str1 = 'HelloWorld'
str2 = 'Hello World'
print(str.isalpha()) #True
print(str.isalpha()) #False
isdigit()
如果字符串只包含数字则返回 True,否则返回 False。
示例:
str1 = '1234567890'
str2 = 'Hello World'
print(str1.isdigit()) #True
print(str1.isdigit()) #False
isalnum()
如果字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False。
示例:
str1 = '12345'
str2 = '12345H'
str3 = ''
print(str1.isalnum()) #True
print(str2.isalnum()) #True
print(str3.isalnum()) #False
isspace()
如果字符串中只包含空白(空格),则返回 True,否则返回 False。
示例:
str1 = 'Hello World'
str2 = ' '
str3 = ''
print(str1.isspace()) #False
print(str2.isspace()) #True
print(str3.isspace()) #False