首页 > 编程语言 >python基础:split、join、replace、remove、del、pop、index小记python 字符串的split()函数详解leecode:删除列表中特定元素的几种方法

python基础:split、join、replace、remove、del、pop、index小记python 字符串的split()函数详解leecode:删除列表中特定元素的几种方法

时间:2023-03-26 11:01:20浏览次数:44  
标签:index python 元素 pop 列表 split test

这里总结了平时写脚本时经常用到的一些基础方法,做个记录

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']

leecode:删除列表中特定元素的几种方法

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)可以移除列表中的元素,相关练习题:移除元素

 




标签:index,python,元素,pop,列表,split,test
From: https://blog.51cto.com/u_10698621/6149943

相关文章

  • python文件对比
    文件对比是否一致,我们一般采用md5值对比,假如一样,代表文件一致,不一样说明不一致假如想要详细的对比信息内容,difflib库提供了文件对比的详细信息和结果1、首先我们查看下......
  • Caused by: java.sql.SQLException: Parameter index out of range (2 > number of pa
    一、问题背景在xml配置中自定义了sql语句二、报错截图如下三、我的项目配置如下四、分析问题五、问题原因在xml中自定义sql语句时,里面不能有注释过得sql六、解决......
  • Python 批量翻译图片 附详细代码
    环境:Python3.7原文链接:Python批量翻译图片附详细代码_艽野尘梦better的博客-CSDN博客有道智云API想要批量翻译图片,并将翻译内容合并在原图片上,即不改变图片背景,翻......
  • Python函数参数类型及可变参数
    参数类型位置参数根据形参位置顺序进行实参传递;关键字参数根据形参名进行实参传递;默认参数给形参设置默认值,实参与默认值不符时需要覆盖传递;可变参数......
  • python 使用 kafka
    python使用kafka说明:关于kafka的启动与安装,命令行的使用,此处不做过多的解释,本篇文章主要描述kafka在python中的使用;1.python使用kafka生产者**说明:**python......
  • python中的is语句
    前置知识:python中,boolean,string,tuple,int,float属于不可变类型,set,dictiry,list属于可变类型is()方法用于判定两个数据的值是否相同。对于不可变类型,值相同,说明数据相同......
  • 《做一个不背锅运维:浅谈Python的元编程》
    什么是元编程Python元编程是指在运行时对Python代码进行操作的技术,它可以动态地生成、修改和执行代码,从而实现一些高级的编程技巧。Python的元编程包括元类、装饰器、动态......
  • [oeasy]python0116_文字的起源_苏美尔文明_楔形文字_两河流域
    文字起源回忆上次内容上次回顾了西里尔字符的编码过程KOI-7KOI-8ISO-8859系列进行总结字符扩展ascii共16种由iso组织制定从iso-8859-1到iso-8859-16无法同时显示......
  • python文本转语音
     pipinstallgtts (wind_2021)J:\test>pipinstallgttsCollectinggttsDownloadinggTTS-2.3.1-py3-none-any.whl(28kB)Collectingrequests<3,>=2.27......
  • python模块之tkinter
    tkinter图形化界面GUI1、导入模块tkinter  importtkinterastk2、操作创建窗口window=tk.Tk()设置窗口大小geometry('宽*高')设置窗口标题title('标题')......