首页 > 编程语言 >python基础:split、join、replace、remove、del、pop、index小记

python基础:split、join、replace、remove、del、pop、index小记

时间:2023-02-06 09:55:05浏览次数:60  
标签:index join 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,join,python,元素,pop,列表,split,test
From: https://www.cnblogs.com/hanmk/p/17089762.html

相关文章

  • python下载慢
    1,Python官方网址https://www.python.org/downloads/2,选择国内镜像源,如阿里的。https://registry.npmmirror.com/binary.html?path=python/ ......
  • [Typescript] Indexing an Object with Branded Types
    Inthisexercise,we'regoingtolookatareallyinterestingpropertyofbrandedtypeswhenthey'reusedwithindexsignatures.Herewehaveour User and P......
  • Python 内置界面开发框架 Tkinter入门篇 丙(文末有福利彩蛋,今天可是元宵节)
    以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/B1hH5Qzd2RkAiiUId1tLWw本文大概2874个字,阅读需花10分钟内容......
  • python 文件太多打不开文件夹,取样少量的文件
    python文件太多打不开文件夹,取样少量的文件,建立同样的文件目录结构importosimportshutilroot_file="/media/algo/data_1/everyday/20230203/snowy"basename_=......
  • python的tkinter
    tkinterpython的PEP8规范:PEP8–StyleGuideforPythonCode|peps.python.org基于tkinter模块创建GUI程序包含如下4个核心步骤:创建应用程序主窗口对象(也称:根窗......
  • jmeter性能测试出现java.net.BindException: Address already in use: connect
    使用jmeter进行性能测试时,如果压测的线程比较多,可能会出现java.net.BindException:Addressalreadyinuse:connect压测机系统window10  问题原因:是因为压测机......
  • 跟着廖雪峰学python 003
    ​ ​编辑  列表和元组list是一种有序、可变的数据类型,可添加删除其中的元素。len()函数:可以获取列表元素的个数classmates=['Micheal','Bob','James']......
  • python学习——【第一弹】
    前言Python是一种跨平台的计算机程序设计语言,是ABC语言的替代品,属于面向对象的动态类型语言,最初被设计用于编写自动化脚本,随着版本的不断更新和语言新功能的添加,越来越多被......
  • 数据结构与算法Python语言实现-第一章答案
    1.1编写一个Python函数is_multiple(n,m),用来接收两个整数值n和m,如果n是m的倍数,即存在整数i使得n=mi,那么函数返回True,否则返回Falsedefis_multiple......
  • Python黑客编程之SSH反向隧道
    目的情况假设:攻击机A可以访问肉鸡B,肉鸡B可以访问内网web服务器C,但是攻击机没法直接访问web服务器C办法:在攻击机A和肉鸡B上建立ssh隧道,将web服务器C的端口8080映射到攻击......