字符串1·(大小写,增长,减短,判断,分割)

字符串大小写处理:


a='xiao bin'

#字符串首个字母大写:
a.capitalize()---->Xiao bin

 
#单词首字母全部大写 
a.title()--------->Xiao Bin    
 
 
#单词全部大写
a.upper()--------->XIAO BIN      


#单词全部小写
a.lower()--------->xiao bin    

字符串增长处理:


#拼接
1·str+str
"I am a"+"boy"---->I am a boy

2·strstr
"I am a""boy"----->I am a boy  #该方法只可用于字符串拼接,变量不行 错误方法:>>>prefix = 'Py' >>>prefix 'thon'


#复制
str*n
a='python'
a*2--------------->pythonpython 


#增加元素
str.join(iterable)    #对可迭代的对象用给定的字符串进行拼接,返回拼接后的字符串,可迭代的对象包括字符串、元组、列表等
'.'.join(a)------------>p.y.t.h.o.n

str.jion()
name = "xxx"
item = ["i", "am", "learning"]
name.join(item)------>ixxxamxxxlearning

#使用制表符增加空格
str里面加制表符
"pyth\ton"----------->"pyth  on"


#填充
a='下载完成'

字符串放中间填充:
str.center()              #center(宽度,填充符号)
a.center(20,'*')---------->********下载完成********

字符串放左边填充:    
name.ljust(10, 'y')-------->下载完成yyyyyy

字符串放右边填充
name.rjust(25, 'y')-------->yyyyyy下载完成


占位符使用
i=6
"==========正在抓取%e页==========" %i--->==========正在抓取6.000000e+00==========
"==========正在抓取%f页==========" %i--->==========正在抓取6.000000==========
"==========正在抓取%c页==========" %i--->==========正在抓取 页==========
"==========正在抓取%s页==========" %i--->==========正在抓取6==========


format格式化                       #可用于爬虫URL拼接
1~设置参数                         #槽要相互对应
a="I do{} want {} play"
b=a.format("n't",'to')----------->I don't want to play

2~传入对象                        #:引导符号,*填充符号,^居中对齐,>右对齐,<左对齐,20字符串宽度
c="I'm binger"
d='{0:*^20}'.format(c)------------>*****I'm binger*****0:代表第0个槽

字符串减短处理:


#删除
a=' xiao bai   '

删除两端空格           #若strip()内指定子字符串,也可除去母字符串两端指定内容
str.strip()
a.strip()------------>'xiao bai'


删除结尾空格          #不论个数
str.rstrip()
a.rstrip(---------->' xiao bai'


删除开头空格           #不论个数
str.lstrip()
a.lstrip()------------>'xiao bai   '


替换删除法
name.replace(old, new, count)       #把字符串中的子字符串转换成新的,转换的数目由count决定
b=a.replace(' ',"")---------------->'xiaobai'


正则删除法
re.sub(pattern,repl,string,count=0,flags=0)
import re
a="da dad ad ada aaedr a daf s "
b=re.sub('\s','',a)                #\s为匹配规则(空格)
print(b)------------------------->dadadadadaaaedradafs

字符串判断处理


判断字符串中所有字符是否都为字母        #返回bool型
name.isalpha() 
name = "abn"
name.isalpha()----------------------->True

 
判断字符串中所有字符是否都为数字        #返回bool型
name.isdigit() 
name = "12abn"
name.isdigit()----------------------->False


判断字符串中所有字符是否都为数字或字母   #返回bool型 
name.isalnum() 
name = "12abn"
name.isalnum()------------------------>True


判断字符串中所有字符是否都为空白符,包括空格、缩进、换行等不可见转义符   #返回bool型,至少得有一个字符,否则判定为假
name.isspace() 
name = "\n"
name.isspace()---------------------------->True
name = ""
name.isspace()---------------------------->False


判断字符串是否以指定的前缀开头 
name.startswith(prefix, start, end) 
name = "2018.9.1"
name.startswith("2018")------------------->True


判断字符串是否以指定的后缀结束 
name.endswith(suffix, start, end)
name = "xx.doc"
name.endswith(".doc")--------------------->True
 
判断一个字符串是否包含在另一个字符串里面
in 和 not in 
"ss" in "i xx sss"------------------------>True
"am" not in "smm ffn"--------------------->True

字符串分割处理


分割成列表子字符串
name.split(sep, max_split)          #sep为分隔符,max_split为最大的分割次数,如果省略那就是有多少分割多少,返回分割后的子字符串组成的列表
str = "123-456-789"
str.split("-")-------------------->['123', '456', '789']
str.split("-", 1)----------------->['123', '456-789']

name.splitlines(keepends)         #按换行符\r、\n对字符串进行分割,keepends为bool型,表示是否保留换行符,返回由分割后组成的子字符串组成的列表
name = "xxx\rbbb\n"
name.splitlines()---------------->['xxx', 'bbb']
name.splitlines(True)------------>['xxx\r', 'bbb\n']


分割成元组子字符串
name.partition(sep)                #从字符串的左侧开始查找分隔符sep,若找到分隔符,则返回一个元组,由分隔符左侧的内容、分隔符、分隔符右侧的内容组成。 找不到分隔符就以2形式返回
str.partition("-")----------------->('123', '-', '456-789')
str.partition(" ")----------------->('123-456-789', '', '')

name.rpartition(sep)               #从字符串的右侧开始查找分隔符sep,与name.partition(sep)功能一致 
str.rpartition("-")---------------->('123-456', '-', '789')
 
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值