Python基础——字符串
字符串
字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。例如
str = “Python”
str1 = “hello World”
Python访问子字符串,可以使用方括号来截取字符串。例如
var1 = 'Hello World!' var2 = "Runoob" print ("var1[0]: ", var1[0]) print ("var2[1:5]: ", var2[1:5]) “”“ 执行结果 var1[0]: H var2[1:5]: unoo ”“”
Python转义字符
在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。如下表:

Python字符串格式化
Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。

Python 的字符串内建函数
Python 的字符串常用内建函数如下:
str = "test \tstr_Python"
# 将字符串的第一个字符转换为大写
print(str.capitalize()) # 结果:Test str_python
# str.center(width, fillchar)返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。
print(str.center(20,"*"))# 结果:**test str_Python**
# str.count(str, beg= 0,end=len(string)) 返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数
print(str.count("t"))# 结果:4
# str.endswith(suffix, beg=0, end=len(string)) 检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.
print(str.endswith("n"))# 结果:True
# str.expandtabs(tabsize=8) 把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 。
print(str.expandtabs(tabsize=8))# 结果:test str_Python
# str.find(str, beg=0 end=len(string)) 检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1
print(str.find("P"))# 结果:10
# str.index(str, beg=0, end=len(string)) 跟find()方法一样,只不过如果str不在字符串中会报一个异常.
# print(str.index("x")) 报错
# str.isalnum() 如果字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
print(str.isalnum())# 结果:False
print("Test998".isalnum())# 结果:True
# str.isalpha() 如果字符串至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False
print(str.isalpha())# 结果:False
print("Test".isalpha())# 结果:True
# str.isdigit() 如果字符串只包含数字则返回 True 否则返回 False.
print(str.isdigit())# 结果:False
print("123".isdigit())# 结果:True
#islower() 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False
print(str.islower())# 结果:False
print("small".islower()) # 结果:True
# str.isnumeric() 如果字符串中只包含数字字符,则返回 True,否则返回 False
print(str.isnumeric())# 结果:False
print("998".isnumeric())# 结果:True
# str.isspace() 如果字符串中只包含空白,则返回 True,否则返回 False.
print(str.isspace())# 结果:False
print("\t".isspace())# 结果:True
# str.istitle() 如果字符串是标题化的(见 title())则返回 True,否则返回 False
print(str.istitle())# 结果:False
print("Titletest".istitle())# 结果:True
# str.isupper() 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False
print(str.isupper())# 结果:False
print("TEST".isupper())# 结果:True
# str.join(seq) 以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串
s1 = "-"
s2 = ""
seq = ("r", "u", "n", "o", "o", "b") # 字符串序列
print (s1.join( seq )) # 结果:r-u-n-o-o-b
print (s2.join( seq )) # 结果:runoob
# len(string) 返回字符串长度
print(len(str))# 16
# ljust(width[, fillchar]) 返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。
print(str.ljust(20,"*")) # test str_Python****
# str.lower() 转换字符串中所有大写字符为小写
print(str.lower())# 结果是:test str_python
# str.lstrip() 截掉字符串左边的空格或指定字符。
print("****Test".lstrip("*")) # 结果是:Test
# max(str) 返回字符串 str 中最大的字母
print(max(str)) #结果是:y
# min(str) 返回字符串 str 中最小的字母。
print(min("test")) # 结果是:e
print(min("Test")) # 结果是:T
print(min(" Test"))# 结果是: (一个空格)
# str.replace(old, new [, max]) 把将字符串中的 str1 替换成 str2,如果 max 指定,则替换不超过 max 次。
print(str.replace("str","STR"))# 结果是:test STR_Python
# rfind(str, beg=0,end=len(string)) 类似于 find()函数,不过是从右边开始查找.
print(str.rfind("P")) #结果是:10
# str.rjust(width,[, fillchar]) 返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串
# str.rindex( str, beg=0, end=len(string)) 类似于 index(),不过是从右边开始.
# print(str.rindex("x")) 报错
print(str.rjust(20,"*")) # 结果是:****test str_Python
# str.rstrip() 删除字符串字符串末尾的空格.
print("Test***".rstrip("*"))# 结果是:Test
# str.isdecimal() 检查字符串是否只包含十进制字符,如果是返回 true,否则返回 false。
print(str.isdecimal())# 结果是:False
print("100".isdigit())# 结果是:True
# str.split(str="", num=string.count(str)) num=string.count(str)) 以 str 为分隔符截取字符串,如果 num 有指定值,则仅截取 num 个子字符串
print(str.split("\t")) # 结果是:['test ', 'str_Python']
# str.splitlines([keepends]) 按照行('\r', '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。
print(str.splitlines()) # 结果是:['test \tstr_Python']
# str.startswith(str, beg=0,end=len(string)) 检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查。
print(str.startswith("s")) #结果是:False
# str.strip([chars]) 在字符串上执行 lstrip()和 rstrip()
print("***Test**".strip("*")) #结果是:Test
# str.swapcase() 将字符串中大写转换为小写,小写转换为大写
print(str.swapcase()) # 结果是:TEST STR_pYTHON
# str.title() 返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写(见 istitle())
print(str.title()) # 结果是Test Str_Python
# str.upper() 转换字符串中的小写字母为大写
print(str.upper()) #结果是:TEST STR_PYTHON
# str.zfill (width) 返回长度为 width 的字符串,原字符串右对齐,前面填充0
print(str.zfill(20)) #结果是:0000test str_Python

浙公网安备 33010602011771号