1、何谓字符串内建函数
只要创建了字符串,就默认可以调用内建函数(系统准备的一些函数)。
2、与大小写相关
主要的函数有capitalize() 、title() 、upper() 、lower()等。
-
capitalize() :将字符串第一个字母变大写
message = 'you are a beautiful girl!' msg = message.capitalize() print(msg) #输出结果为:'You are a beautiful girl!'
-
title() : 将每个单词首字母大写
message = 'you are a beautiful girl!' msg = message.title() print(msg) #输出结果为:'You Are A Beautiful Girl!'
-
istitle() : 判断每个单词首字母是否为大写,返回值为布尔类型
message = 'you are a beautiful girl!' msg = message.istitle() print(msg) #输出结果为:False
-
upper() : 将字符串全部转为大写的表现形式
message = 'you are a beautiful girl!' msg = message.upper() print(msg) #输出结果为:'YOU ARE A BEAUTIFUL GIRL'
-
lower() : 将字符串大写字母全部转为小写
message = 'You are a beautiful Girl!' msg = message.upper() print(msg) #输出结果为:'you are a beautiful girl!'
3、查找与替换
主要有find() 、rfind() 、lfind() 、index() 、rindex() 、lindex() 、replace()等。
-
find() :返回字符(串)的位置,没有找到则返回值是-1,可以找到则返回字母(串)第一次出现的位置。
函数格式:find(‘要查找的字符’,start,end), start是指定开始搜寻的位置,end指定结束的位置。message = 'you are a beautiful girl!' position = message.find('a') print(position) #输出结果为:4
-
rfind() & lfind()
- rfind() : 表示右侧开始检索
- lfind() : 表示左侧开始检索
- lfind()与rfind() 用法跟find()一样
-
index() & rindex() & lindex()
index() 、rindex()和lindex()与对应的find()、rfind()和lfind()函数用法基本一样,只不过index()这类函数,如果搜索的str不在字符串中会报出一个异常,而find()这类函数会返回-1。 -
示例:打印文件名
url = 'https://www.baidu.com/img/bg_1.jpg' p = url.rfind('/') filename = url[p+1:] print(filename)
-
replace() : 函数原型为 replace(old,new,[max]),[max]表示可选,max表示最多替换几个。old是需要被替换的字符串,new是需要替换的字符串。
4、编码与解码
编码与解码体现在网络传输。中文字符一般会涉及编码问题。编码格式python3中默认为utf-8的国际标准。
#编码
msg = '你笑起来真好看。'
result = msg.encode('utf-8')
#解码
m = result.decode('utf-8')
print(m)
5、判断开头与结尾
函数为startswith() 、endswith(),返回值都是布尔类型。
- startswith() : 判断是以 xxx 开头
- endswith() : 判断是否以 xxx 结尾
# 应用:文件上传
filename = '笔记.docx'
# 判断filename是否以docx结尾
result = filename.endswith('docx')
print(result)
6、判断是否为数字
主要函数为:isalpha() 、isdigit() , 返回的结果是布尔型数值。
-
isalpha() : 判断是否全为字母
s = 'efgc7' result = s.isalpha() print('result=',result) #结果为 False
-
isdigit() : 判断是否全为数字
s = '7799' result = s.isdigit() print(result) #结果为True
7、join、split、count
-
join()函数
new_str = '-'.join('abc') print(new_str) #输出的结果为'a-b-c' list = ['J','a','s','o','n'] result = ''.join(list) print(result) #输出的结果为'Jason'
-
split()函数
-
lstrip()
s = ' hi ' s = s.lstrip() #去除字符串左侧的空格 print(s+'8') #输出结果为'hi 8'
-
rstrip()
s = 'hi ' s = s.rstrip() #去除右侧的空格 print(s) #输出结果为'hi'
-
strip()
执行此函数,相当于同时执行lstrip()和rstrip()函数。
-
-
count() 函数
求字符串指定args的个数。s = 'Your name is Jason' n = s.count('a') print(n) #输出结果为:2