python基础:splitjoinreplaceremovedelpopindex小记
Posted 我是冰霜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础:splitjoinreplaceremovedelpopindex小记相关的知识,希望对你有一定的参考价值。
这里总结了平时写脚本时经常用到的一些基础方法,做个记录
1、split()函数
可以基于
分隔符
将字符串分割成由若干子串
组成的列表
str.split(str="", num=string.count(str))
str -- 分隔符,默认为所有的空字符,包括空格、换行(\\n)、制表符(\\t)等。
num -- 分割次数。默认为 -1, 即分隔所有。
默认全部分割
>>> case = "happy, new, year"
>>> case.split(\',\')
[\'happy\', \' new\', \' year\']
指定分割次数(如下分割1次,分成2个列表)
>>> txt = "Google#Runoob#Taobao#Facebook"
>>> txt.split("#", 1)
[\'Google\', \'Runoob#Taobao#Facebook\']
如果不指定分隔符,那么 split() 将默认使用空白字符——换行符、空格、制表符
>>> test = "my name is xxx yyy"
>>> test.split()
[\'my\', \'name\', \'is\', \'xxx\', \'yyy\']
默认是以空格作为分隔符,不管空格在哪,或者有几个,全部被切掉了
分享一篇文我认为解释最形象的文章:python 字符串的split()函数详解
2、join()函数
用于将序列中的元素以
指定的字符
连接生成一个新的字符串
>>> case = [\'a\', \'b\', \'c\']
>>> \',\'.join(case) # 以\',\'连接
\'a,b,c\'
>>> \'\'.join(case) # 以空字符连接
\'abc\'
>>> \' \'.join(case) # 以单个空格符连接
\'a b c\'
3、replace()函数
可以进行简单的子串替换,如果指定第三个参数
max
,则替换不超过 max
次不会影响原字符串(因为字符串是不可变的)
语法
str.replace(old, new[, max])
old -- 将被替换的子字符串。
new -- 新字符串,用于替换old子字符串。
max -- 可选字符串, 替换不超过 max 次
>>> strs = "this is string example....wow!!! this is really string";
>>> strs.replace("is", "was")
\'thwas was string example....wow!!! thwas was really string\'
>>> strs.replace("is", "was", 2);
\'thwas was string example....wow!!! this is really string\'
4、remove()函数
移除列表中某个值的第一个匹配项(直接在原有列表中修改)
如果不确定或不关心元素在列表中的位置,可以使用 remove() 根据指定的值删除元素
语法:
list.remove(obj)
参数
obj -- 列表中要移除的对象
>>> test = ["a","b","a","c","a"]
>>> test.remove("a")
>>> test
[\'b\', \'a\', \'c\', \'a\']
5、del()函数
如果运用到列表中,则是指删除
指定位置
的元素,在删除时需要指定元素的索引位置
>>> cat = ["胖喵","橘喵","奶牛喵"]
>>> del cat[1]
>>> cat
[\'胖喵\', \'奶牛喵\']
当列表中一个元素被删除后,位于它后面的元素会自动
往前移动
填补空出的位置,且列表长度
减 1。>>> test = ["a","b","c","d","e","f"]
>>> del test[0:3] # 删除列表中前3个元素
>>> test
[\'d\', \'e\', \'f\']
结合index()
函数删除某个元素(用index()获取元素位置,然后用del()删除该元素)
>>> test = ["a","b","c","d","e","f"]
>>> del test[test.index("a")]
>>> test
[\'b\', \'c\', \'d\', \'e\', \'f\']
6、pop()函数
获取并删除指定位置的元素
使用
pop()
同样可以获取列表中指定位置的元素,但在获取完成后,该元素会被自动删除;如果你为
pop()
指定了偏移量
,它会返回偏移量对应位置
的元素;如果不指定,则默认使用
-1
因此,
pop(0)
将返回列表的头元素
,而pop()
或 pop(-1)
则会返回列表的尾元素
>>> test = ["a","b","c","d","e","f"]
>>> test.pop()
\'f\'
>>> test
[\'a\', \'b\', \'c\', \'d\', \'e\']
>>> test = ["a","b","c","d","e","f"]
>>> test.pop(2)
\'c\'
>>> test
[\'a\', \'b\', \'d\', \'e\', \'f\']
它可以与index()函数结合使用,用index()获取元素位置,然后用pop()删除
7、index()函数
获取列表中某个元素的位置
>>> test = ["a","b","c","d","e","f"]
>>> test.index("c")
2
>>> test = ["a","b","c","d","e","f"]
>>> test.pop(test.index("b")) # 结合pop()删除元素b
\'b\'
>>> test
[\'a\', \'c\', \'d\', \'e\', \'f\']
利用上述(4、5、6、7)可以移除列表中的元素,相关练习题:移除元素
以上是关于python基础:splitjoinreplaceremovedelpopindex小记的主要内容,如果未能解决你的问题,请参考以下文章