字符串格式:s1 = 'adf\nsd',类型为str
原始字符串:在字符串的第一个引号前加上字母“ r ”(不区分大小写),与普通字符串有着几乎完全相同的语法
代码示例:
print(r"no \n yes") --no \n yes
一、字符串格式化
代码示例:
name = "zhangsan"
print("我的名字是%s,年龄是%d" % (name,23)) --我的名字是zhangsan,年龄是23
二、去除字符串左右两边的特定字符或空格
s.strip("a") 表示将字符串左右两边的特定字符"a"去除
s.strip("") 不带参数的strip()函数,表示把字符串两边空白字符去除
s.lstrip("a") 表示将字符串左边的特定字符"a"去除
s.rstrip("a") 表示将字符串右边的特定字符"a"去除
s.lstrip("")、s.rstrip("") 表示将字符串左边或右边的空白字符去除
代码示例:
#strip的用法
s = " boy boy boy "
s1 = s.strip(' ') --s1 = "boy boy boy" 将字符串两边空白字符去除
s = "*boy boy boy*"
s1 = s.strip('*') --s1 = "boy boy boy" 将字符串两边的"*"字符去除
#lstrip和rstrip同理
三、字符串的大小写转换
s.lower() 将字符串转变为小写
s.upper() 将字符串转变为大写
s.swapcase() 将字符串的大小写互换
s.capitalize() 将字符串的首字母转换为大写,只对字符串第0位字符是小写字母时生效
s.title() 将字符串的每个单词首字母大写
代码示例:
s = "aBc"
s1 = s.lower() --s1 = "abc"
s1 = s.upper() --s1 = "ABC"
s1 = s.swapcase() --s1 = "AbC"
s1 = s.capitalize() --s1 = "ABc"
s = "12ab cd"
s1 = s.title() --s1 = "12Ab Cd"
四、字符串对齐
s.ljust(n) 输出n个字符,s左对齐,不足部分默认用空格填充
s.ljust(n,"a") 输出n个字符,s左对齐,不足部分用"a"填充
s.rjust(n,"a") 输出n个字符,s右对齐,不足部分用"a"填充
s.center(n,"a") 输出n个字符,s中间对齐,向两边填充"a"
代码示例:
s = "123abc"
s1 = s.ljust(10,"e") --s1 = '123abceeee'
s1 = s.rjust(10,"e") --s1 = 'eeee123abc'
s1 = s.center(10,"e") --s1 = 'ee123abcee'
五、字符串的搜索
s.find("s", n1,n2) 返回s中出现"s"的第一个字母的标号,如果s中没有"s"则返回-1。n1为开始,n2为结束。n2可不填。找不到会返回-1
s.index("s", n1,n2) 与find一样,只是没找到时会报错
代码示例:
s='I am a boy'
s.find('a') --2
s.find('a',3) --5
s.find('a',6,7) --找不到,所以会返回-1
六、字符串的替换
s.replace("a", "b", n) 把s中的"a"替换为"b",n为替换次数。这是替换的通用形式,还有一些函数进行特殊字符的替换
代码示例:
s='boy boy boy'
s1 = s.replace("b","a",2) --s1 = 'aoy aoy boy'
s1 = s.replace("y","z") --s1 = 'boz boz boz'
七、字符串的分割
s.split("a",n) 以"a"为分隔符,把s分成一个list,n表示分割的次数。默认的分割符为空白字符
代码示例:
s = "1 2 3 4 5 6"
s1 = s.split(" ") --s1 = ['1', '2', '3', '4', '5', '6']
s1 = s.split(" ",2) --s1 = ['1', '2', '3 4 5 6']
八、字符串的连接
s.join(list) 将列表拼接为字符串
代码示例:
s = "_1_"
list1 = ["a","b","c"]
s1 = s.join(list1) --s1 = 'a_1_b_1_c'
s1 = " ".join(list1) --s1 = 'a b c' --将列表内容用空格拼接为字符串
九、判断字符串是否以某个字符串为开头或结尾
s.startswith("a") 判断s是否以"a"为开头
s.endswith("a") 判断s是否以"a"为结尾
代码示例:
s = "abc"
s.startswith("a") --true
s.endswith("c") --true
十、判断字符串中是否全由字母、字母或数字、数字、空格组成
s.isalpha() 判断s中所有字符是否全是字母组成,且s内至少有一个字符
s.isalnum() 判断s中所有字符是否全是字母或数字组成,且s内至少有一个字符
s.isdigit() 判断s中所有字符是否全是数字组成,且s内至少有一个字符
s.isspace() 判断s中所有字符是否全是空格组成,且s内至少有一个字符
代码示例:
s = "abc123"
s.isalpha() --false
s.isalnum() --true
s.isdigit() --false
s.isspace() --false
十一、判断字符串中字母的大小写
s.islower() 判断s中所有字母是否全是小写组成,且s内至少有一个字符
s.isupper() 判断s中所有字母是否全是大写组成,且s内至少有一个字符
s.istitle() 判断s中所有单词的首字母是否全是大写组成,其他为小写字母,且s内至少有一个字符
代码示例:
s = "ABc Bc"
s.islower() --false
s.isupper() --false
s.istitle() --false
十二、字符串出现次数
s.count("a",n1,n2) 判断s中字符"a"出现的次数,从n1位置开始查找,n2位置结束
代码示例:
s = 'boy boy boy'
s.count('b') --3
s.count('b', 3, 6) --1
s.count('dd') --0
十三、将字符转Ascii
ord("a") 将"a"转为Ascii值
chr(97) 找到编码为97的Ascii符号
代码示例:
ord('a') --97
chr(97) --a