Python split()函数使用详解,Python分割字符串

news2024/11/27 12:57:28

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:小白零基础《Python入门到精通》

split

  • 1、不指定分隔符
  • 2、分隔符的类型
  • 3、指定分隔次数
  • 4、分隔的结果

split() 可以按照指定「分隔符」对字符串进行「分割」

语法

string.split( str, num)

参数

  • str :(可选)指定分隔符,默认为空字符
  • num :(可选)分割次数,默认 -1,即分割所有

返回值

  • 返回分割后的字符串列表

实例:根据 - 将字符串分割成列表

str1 = 'a-b-c-d'
print(str1.split('-'))

输出:

['a', 'b', 'c', 'd']

1、不指定分隔符

str 参数用来指定分隔符,不给参数时,「默认」「空字符串」作为分隔符,这里的空字符串包括空格,换行符 \n,制表符 \t

str1 = 'a b c d'
print(str1.split())

str2 = 'a\nb\nc\nd'
print(str2.split())

str3 = 'a\tb\tc\td'
print(str3.split())

输出:

['a', 'b', 'c', 'd']
['a', 'b', 'c', 'd']
['a', 'b', 'c', 'd']

需要注意的是,「多个空格」的分隔效果,跟一个空格是相同的

str1 = 'a   b c  d'
print(str1.split())

输出:

['a', 'b', 'c', 'd']

空格、换行符、制表符组合的分隔情况,也一样

str1 = 'a \nb \nc \td'
print(str1.split())

输出:

['a', 'b', 'c', 'd']

2、分隔符的类型

分隔符必须是「字符串类型」或者不指定,否则会报错 TypeError: must be str or None

在这里插入图片描述

3、指定分隔次数

num 参数可以指定分隔的「次数」,如果不给参数,默认值是 -1,就是从头切到尾的意思

str1 = 'a-b-c-d'
print(str1.split('-'))
print(str1.split('-', -1))

输出:

['a', 'b', 'c', 'd']
['a', 'b', 'c', 'd']

如果 num 「负数」,和默认效果相同,也会从头切到尾

str1 = 'a-b-c-d'
print(str1.split('-', -3))
print(str1.split('-', -10))

输出:

['a', 'b', 'c', 'd']
['a', 'b', 'c', 'd']

如果 num 为 0,表示不切割,即切割0次

str1 = 'a-b-c-d'
print(str1.split('-', 0))

输出:

['a-b-c-d']

如果 num 「正数」,则表示切割指定次数

str1 = 'a-b-c-d'
print(str1.split('-', 1))
print(str1.split('-', 2))
print(str1.split('-', 3))

输出:

['a', 'b-c-d']
['a', 'b', 'c-d']
['a', 'b', 'c', 'd']

4、分隔的结果

返回的分隔结果是一个「列表」,可以按照索引获取里面的值

str1 = 'a b c d'
print(str1.split())
print(str1.split()[1])
print(str1.split()[2])

输出:

['a', 'b', 'c', 'd']
b
c

指定分隔次数后,可以将返回的结果「赋值」「多个变量」。当然,变量的个数与分隔结果的个数要相同,数量不同会报错 ValueError: too many values to unpack

在这里插入图片描述

比如分隔1次,就会分隔成两个字符串,就用两个结果接收。

str1 = 'a b c d'
r1, r2 = str1.split(' ', 1)
print(r1)
print(r2)

输出:

a
b c d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/720175.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

你真的不想知道怎么用ai绘画图片生成图片吗?

亲爱的二次元迷们,你是否曾经梦想过能够画出自己心中的二次元角色,让他们跃然纸上、生动活泼地展现在世人面前?但是,面对空白的画板和一支笔,我们有时会感到无从下手,毫无艺术细胞可言。不要失望&#xff0…

Dlib —— 对视频流进行人脸识别(附C++部分源码、完整源码下载)

照片效果 视频效果 注意:Dlib检测人脸在Release版耗时与CPU有关,本人I7 10代约100ms左右,这里本人将人脸检测用Yolov5对人脸简单抠图训练后 使用yolov5推理检测人脸,之后将检测到的人脸输入给Dlib做特征,发现人脸特征部分耗时也较…

基础实验篇 | uORB消息读写与自定义实验(一)

导读 uORB是PX4/Pixhawk系统中非常重要且关键的模块之一,是用于无人机模块间通信的协议机制。本篇将详细介绍uORB并详细拆解uORB消息读写与自定义实验(一)。 基础实验篇 | uORB消息读写与自定义实验(一) ect Request Broker,微对…

7、动手学深度学习——卷积神经网络:基础部件+LeNet

1、图像卷积 1. 互相关运算 严格来说,卷积层是个错误的叫法,因为它所表达的运算其实是互相关运算(cross-correlation),而不是卷积运算。在卷积层中,输入张量和核张量通过(互相关运算)产生输出张量。 首先…

python 中禁用 SettingWithCopyWarning

最近代码中出现了这个warn,但是我确信我已经把所有的df赋值都改成loc了,依旧会出现,只有把这个warn禁了。 import pandas as pd import warnings# 禁用 SettingWithCopyWarning 警告 warnings.filterwarnings("ignore", categorypd…

闲人闲谈PS之四十三——标准程序的陷阱

惯例闲话:7月,闲人家乡的水蜜桃成熟了,闲人很喜欢吃桃子,可惜经常出门在外,经常错过了水果最好的季节,这次委托家人邮寄了几箱,果然还是家乡的桃子好吃。回顾这几年,错过了不仅仅是水…

数据库sql 根据身份证计算年龄段mysql、oracle

数据库sql根据身份证计算年龄段 mysql: SELECTage,count(*) numFROM(SELECTCASEWHEN TIMESTAMPDIFF(YEAR,DATE(substring(id_card,7,8)),CURDATE())<35 THEN 35岁以下WHEN TIMESTAMPDIFF(YEAR,DATE(substring(id_card,7,8)),CURDATE()) > 35AND TIMESTAMPDIFF(YEAR,DATE…

deque容器语法

文章目录 deque容器deque容器基本概念功能&#xff1a;deque 的实现细节deque与vector底层区别&#xff1a; deque构造函数功能描述&#xff1a;函数原型&#xff1a; deque元素访问deque赋值操作功能描述&#xff1a;函数原型&#xff1a; deque大小操作功能描述&#xff1a;函…

哪些期货公司招居间人,期货居间人的红利期时代已过,该何去何从

2021年9月10日&#xff0c;中国期货业协会发布了关于发布《期货公司居间人管理办法 (试行)》的通知&#xff0c;《期货公司居间人管理办法(试行)》正式出台。 根据通知&#xff0c;期货公司仅能与经有关金融监管部门批准设立的证券公司等金融机构开展居间合作。现在的法人居间绝…

【stable-diffuision-webui】controlnet制作动漫二维码(丐版)

主要参考 原作者的博文&#xff1a;AI生成可扫码图像 — 新 ControlNet 模型展示 光照生成模型C站说明&#xff1a;https://civitai.com/models/80536/lighting-based-picture-control-controlnet 扩展阅读&#xff1a;https://aigc.ioclab.com/sd-showcase/light_controlnet.…

Sentieon | 每周文献-Agrigenomics-第四期

农业系列文章-1 标题&#xff08;英文&#xff09;&#xff1a;Genomic footprints of sorghum domestication and breeding selection for multiple end uses标题&#xff08;中文&#xff09;&#xff1a;高粱驯化的基因组足迹和多种最终用途的育种选择发表期刊&#xff1a;《…

vue3中使用jsx

一、使用vue-cli创建的项目中使用jsx语法 安装Vue 3&#xff1a;使用Vue CLI创建一个新项目或通过npm安装Vue。 配置Vue JSX插件&#xff1a;在创建的项目中&#xff0c;找到 babel.config.js 文件&#xff0c;添加以下插件配置&#xff1a; module.exports {presets: [vue…

CentOS Linux MySQL 数据库 的安装方法

一、简单了解MySQL数据库的体系结构 &#xff08;一&#xff09;MySQL架构图 &#xff08;二&#xff09;MySQL体系结构&#xff1a;连接层、服务层、引擎层、存储层 1、连接层--主要职责&#xff1a;身份认证&#xff0c;连接管理&#xff0c;获取权限信息 &#xff08;1&am…

No11.精选前端面试题,享受每天的挑战和学习

文章目录 JS数组去重的几个方法讲下es6新增symbol 数据类型v-model原理是什么vue响应式原理vue中的data 为什么是个函数&#xff1f;前端有几种缓存方式 JS数组去重的几个方法 在JavaScript中&#xff0c;可以使用几种方法对数组进行去重&#xff1a; 使用Set&#xff1a;Set…

每日汇评:美联储会议纪要是否能确认黄金的看涨楔形?

1、在美国独立日清淡的交易中&#xff0c;黄金价格创下了一周以来的新高&#xff1b; 2、在美联储会议纪要之前&#xff0c;美元利用了对经济衰退的担忧和中美科技之争&#xff1b; 3、黄金需要日线收在1922美元上方才能确认看涨楔形&#xff0c;但看跌的RSI值得谨慎&#xf…

png转svg图片免费

svg免费转换网站 https://vectr.com/design/editor/c232c8cb-5eb8-4bae-b302-25cb94a8f737 操作步骤 1.上传png或者其他格式图片 2.点击导出文件 3.选择导出格式为svg和其他配置参数 4.打开下载好的svg图片 5.在编辑器中看svg图片

短视频矩阵系统源码自研+开发技术文档

一、短视频矩阵系统源码自研&#xff08;站在开发者交付分析&#xff09; 目录 一、短视频矩阵系统源码自研&#xff08;站在开发者交付分析&#xff09; 二、 短视频矩阵系统需要开发的前提语言框架技巧&#xff1a;NGINX&#xff0c;PHP7.4&#xff0c;MySQL5.7&#xff0…

多个微信号如何管理?

很多公司都在发愁这几个问题&#xff1a; 1、拥有多个微信号&#xff0c;不想管理多台手机&#xff0c;想将所有微信号进行统一管理 2、想用软件来代替传统的营销体系&#xff0c;安全性上也要有保障 3、用人成本太大与公司的效益不成正比 4、多个账号发圈不方便&#xff0…

创作神器:探索ai智能绘画软件的魅力与功能

曾经有一个名叫小艾的年轻画家&#xff0c;她对绘画充满热情&#xff0c;并梦想创作出令人惊叹的艺术作品。然而&#xff0c;她发现自己在技术和创意方面遇到了一些困难。正当她感到沮丧时&#xff0c;她听说了一个关于智能ai绘画软件的故事&#xff0c;这个软件据说能够通过机…

Layui的table数据渲染不显示是怎么回事?

&#x1f607;作者介绍&#xff1a;一个有梦想、有理想、有目标的&#xff0c;且渴望能够学有所成的追梦人。 &#x1f386;学习格言&#xff1a;不读书的人,思想就会停止。——狄德罗 ⛪️个人主页&#xff1a;进入博主主页 &#x1f5fc;推荐系列&#xff1a;点击进入推荐系列…