python字符串操作总结
字符串增删改查[strap()函数, split()函数 , find()函数 , 切片等]
学习一门编程语言一般从基础的数据类型开始 ,python中的数据类型有:整型、浮点、布尔、字符串、列表、元组、字典、集合、空等,之前总结了一些字符串的操作和应用,希望能帮到学习python的朋友们。
字符串的各种操作
1,字符串的拼接
>>>s='hello'*2 用乘法重叠
>>>print(s)
hellohello
>>>s='hello'+'world' 用加号拼接
>>>print(s)
helloworld
>>>a='world' 用join 拼接
>>>s=''.join(a)
>>>print(s)
world
2,字符串的统计
>>>s='asjbsbjjdj'
>>>len(s) len() 统计字符串个数(也可以统计元组、列表、集合等)
10
>>>print(s[0]) s[n] 提取字符串中单个字母或元素,n是第几个,从头开始左到右,以0开始排列,0、1、2、3...
a
>>>print(s[-1]) 倒序表示,从结尾提取 右到左,以-1开始,-1、-2、-3....
j
3、字符串切片 提取
切片(取其中某段) 变量[开始:结束:步进],中括号[]定义切片,列表、元组、集合等都可以适用 如: s=‘abcdefghijklmn’
>>>s = 'abcdefghijklmn'
>>>s[0:4] 包括起始值(元素)不包括结束值,默认步进值为1 ,
'abcd'
>>>s[0:6:2] 设置步进值为2 提取
'ace'
>>>s[4:] 当一边没有指定时,就取到边界
'efghijklmn'
>>>s[:4]
'abcd'
>>>s[1:-1] 从结尾提取,下标从-1开始
'bcdefghijklm'
>>>s[-8:]
'ghijklmn'
>>>s[:-8]
'abcdef'
>>>s[:] 表示全选
'abcdefghijklmn'
>>>s[::-1] 使其中的元素 倒叙排列
'nmlkjihgfedcba'
4、字符串切割
split()切割功能,切割后 形成的是列表。
1,按照特定内容切割,‘’引号里可以是空格、字符(默认是空格)
2,可以指定切割次数
3,可以从右面切割
4,按行切割,换行符切割
>>>t='I love you more than I can say'
>>>t.split(' ') 按空格切割
['I', 'love', 'you', 'more', 'than', 'I', 'can', 'say']
>>>t.split('o') 按字符o切割
['I l','ve you m','re than I can say']
>>>t.split(' ',3) 按空格切割 并指定切割次数,3次
['I','love','you','more than I can say']
>>>t.rsplit(' ',2) 从右面开始切割,切割2次
['I love you more than I','can','say']
>>>l='''江畔何人初见月
江月何年初照人
人生代代无穷已
江月年年望相似'''
>>>l.splitlines() splitlines() 按行切割
['江畔何人初见月','江月何年初照人','人生代代无穷已','江月年年望相似']
5,字符串的删除
1,strip()默认删除行首或者行尾的空白符(包括’\n’, ‘\r’, ‘\t’, ’ ')
2,切片提取进行删除
>>>s=' ---anj123kks+++ '
>>>s.strip() 删除两边的空白
'---anj123kks+++'
>>>print(s.strip()) 测试打印的结果
---anj123kks+++
>>>s.lstrip() 删除左边的空白字符
'---anj123kks+++ '
>>>s.rstrip() 删除右边的空白字符
' ---anj123kks+++'
>>>s.strip().strip('-+') 删除两边的空白和‘- +’字符
'anj123kks'
>>>s[4:13] 使用切片删除不需要的字符
'anj123kks'
>>>s[4:6]+s[11:13] 切片和拼接删除
'anks'
6,python中find() 函数查找字符串下标位置
从一个字符串s中查找另一个字符串或字符第一次出现的下标位置,找不到返回 -1.
>>>s='abcdedjcjdlslk'
>>>s1='abc'
>>>s.find(s1) 返回第一次出现abc的位置下标0
0
>>>s.find('j') 返回第一次出现 j 的位置下标6
6
>>>s.find('j',2) 从下标位置2开始查找,找到返回第一次出现的位置下标
6
>>>s.find('j',7) 从下标位置7开始查找
8
>>>s.find('j',10) 从下标位置10开始查找,没有返回-1
-1
5、字符串de字符操作
upper:全大写 ----------------------------- print(h.upper())
lower:全小写 ------------------------------ print(h.lower())
swapcase:大小写转换 ------------------ print(h.swapcase())
capitalize:一句话首字符大写 -----------print(h.capitalize())
title:每个单词首字母大写 ---------------- print(h.title())
count:统计某个字符串出现的次数 -----print(h.count(‘o’))
>>>h='I love you more than I can say'
>>>h.upper() 全大写
'I LOVE YOU MORE THAN I CAN SAY'
>>>h.lower() 全小写
'i love you more than i can say'
>>>h.swapcase() 大小写转换 大写转小写 小写转大写
'i LOVE YOU MORE THAN i CAN SAY'
>>>h.capitalize() 一句话只有首字符大写
'I love you more than i can say'
>>>h.title() 每个单词的首字符大写
'I Love You More Than I Can Say'
>>>h.count('o') 统计某一个字符出现的次数
3
6、字符串的相关判断
startswith:是否以指定(某)字符串开头,-- print(h.startswith(‘I’))
endswith:是否以指定(某)字符串结,----- print(h.endswith(‘red.’))
istitle:是否每个单词首字母大写 ,-- ----------print(h.istitle())
islower:是否是全小写 --------------print(h.islower())
isupper:是否是全大写 --------------print(h.isupper())
isdecimal:是否是数字 ------------- print(h.isdecimal())
isalpha:是否是字母 ---------------- print(h.isalpha())
isalnum:是否是数字或字母 ------ print(h.isalnum())
>>>h='I love you more than I Can Say 12345'
>>>h.startswith('I')
True
>>>h.endswith('Say')
False
>>>h.istitle()
False
>>>h.islower()
False
>>>h.isupper()
False
>>>h.isdecimal()
False
>>>h.isalpha()
False
>>>h.isalnum()
False
7、字符串de转义
有些字符我们需要它显示出来,python用反斜杠 \ 转义字符。
>>>a = 'I\'m\\very ha\\tppy'
>>>print(a)
I'm\very ha\tppy
print r’\t\r’ 实际输出为“\t\r”。
转义字符 描述
(在行尾时) 续行符
\ 反斜杠符号
’ 单引号
" 双引号
\a 响铃
\b 退格(Backspace)
\e 转义
\000 空
\n 换行
\v 纵向制表符
\t 横向制表符
\r 回车
\f 换页
\oyy 八进制数yy代表的字符,例如:\o12代表换行
\xyy 十进制数yy代表的字符,例如:\x0a代表换行
\other 其它的字符以普通格式输出
8、字符串的 占位(格式化)使用:(重要 以后会常用)
(1),百分号%占位的使用,用%来定义。
%s:占位字符串,%d:占位整数,%f:占位小数,%c:占位单个字符
>>>name='二狗'
>>>like='铁锤妹妹'
>>>age=16
>>>'俺叫%s,今年%d岁了,暗恋%s.' % (name,age,like)
'俺叫二狗,今年16岁了,暗恋铁锤妹妹.'
(2),大括号方法,用大括号定义。
使用’ xxx{} '.format() 占位函数。
>>>name='二狗'
>>>like='铁锤妹妹'
>>>age=16
>>>'我是{},今年{},暗恋{}。' .format(name,age,like)
'我是二狗,今年16,暗恋铁锤妹妹。'
版权声明
本站部分原创文章,部分文章整理自网络。如有转载的文章侵犯了您的版权,请联系站长删除处理。如果您有优质文章,欢迎发稿给我们!联系站长:
愿本站的内容能为您的学习、工作带来绵薄之力。
评论