Python3零基础教程之字符串专题进阶

大家好,我是千与编程,上一期我们讲解了Python3编程语言中的数组与列表专题。这一期我们讲解了字符串专题初阶。

在 Python3 的字符串专题进阶教程中,我们将深入探讨更高级的字符串操作技巧,包括字符串切片、替换、去除空白、分割与连接,以及字符串的格式化。
以下是本期内容的思维导图:
79001e8fccd571205f921b8563b9d3f.png

字符串切片

字符串切片允许你获取字符串的子集。通过指定开始索引和结束索引(不包括),你可以截取字符串的任何部分。

示例代码:
s = "Hello, Python!"

# 获取从索引 0 到索引 4 的子字符串
hello = s[0:5]
print(hello)  # 输出: Hello

# 省略结束索引,以获取从开始索引到字符串末尾的所有字符
python = s[7:]
print(python)  # 输出: Python!

代码运行:
523e6e102a2d4fc51df62c3cb09802f.png

2.字符串替换

使用 replace() 方法可以将字符串中的某个子串替换为另一个子串。

示例代码:
s = "Hello, Python!"
# 将 "Python" 替换为 "World"
replaced_s = s.replace("Python", "World")
print(replaced_s)  # 输出: Hello, World!

代码运行:
a89f23283cde251f501bb017469960d.png

3.去除空白

strip() 方法用于去除字符串两端的空白字符,包括空格、制表符、换行符等。lstrip()rstrip() 分别用于去除左侧或右侧的空白字符。

示例代码:
s = "  Hello, Python!  "
# 去除两端空白
stripped_s = s.strip()
print(stripped_s)  # 输出: Hello, Python!

# 去除左侧空白
left_stripped = s.lstrip()
print(left_stripped)  # 输出: "Hello, Python!  "

代码运行:
e1c4165327d3f73cc2aa4f2dae084ed.png

4.字符串分割

split() 方法根据指定的分隔符将字符串分割为一个列表。

示例代码:

对字符串进行分割

# 分割字符串
s = "apple,banana,cherry"
fruits = s.split(",")
print(fruits)  # 输出: ['apple', 'banana', 'cherry']

运行代码:
51cc240e240a5e6199cd53c106947c6.png

5.字符串连接

join() 方法则是将列表中的元素连接成一个字符串。

示例代码:

对字符串进行连接

# 连接列表
fruits_list = ["apple", "banana", "cherry"]
fruits_str = ", ".join(fruits_list)
print(fruits_str)  # 输出: apple, banana, cherry

运行代码:
e69278ff01a863faec50acaa4439d46.png

6.字符串格式化

字符串格式化允许你在字符串中插入变量或表达式的值。Python 提供了多种格式化字符串的方法,包括传统的 % 格式化、format() 方法以及 Python 3.6 引入的 f-strings。

示例代码:
  • 使用 % 操作符:
name = "Python"
s = "Hello, %s!" % name
print(s)  # 输出: Hello, Python!
  • 使用 format() 方法:
name = "Python"
s = "Hello, {}!".format(name)
print(s)  # 输出: Hello, Python!
  • 使用 f-strings(Python 3.6+):
name = "Python"
s = f"Hello, {name}!"
print(s)  # 输出: Hello, Python!

以上三部分代码得运行截图相同,为输出字符串的三种不同方式:
c9e95f62a68f4a3a87457788f7b70bd.png

通过掌握这些进阶的字符串操作技巧,你将能够有效地处理复杂的文本数据,执行数据清洗、解析和格式化文本内容等任务。

字符串类的算法题目很多,适当使用常用的方法以及接口可以提高解题的效率,尤其是在笔试的时候。

我是千与编程,一个只讲干货的码农,我们下期见!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

3.1日学习打卡----初学FastDFS(一)

3.1日学习打卡 目录: 3.1日学习打卡一. 为什么要使用分布式文件系统二. FastDFS简介核心概念上传机制下载机制FastDFS环境搭建_LinuxFastDFS指令 一. 为什么要使用分布式文件系统 单机时代 初创时期由于时间紧迫,在各种资源有限的情况下,通常就直接在项…

Acwing周赛记录

很难得参加一次周赛hhhhh这次参加的是第144场周赛,一共有三道题 AcWing 5473. 简单数对推理 给定两个整数数对,每个数对都包含两个 1∼9 之间的不同整数。 这两个数对恰好包含一个公共数,即恰好有一个整数同时包含于这两个数对。 给定这两…

政安晨【示例演绎虚拟世界开发】(三):TypeScript编程语言——实现游戏脚本开发

TypeScript是一种开源的编程语言,由微软开发和维护。它是JavaScript的一个超集,意味着任何合法的JavaScript代码也是合法的TypeScript代码。TypeScript通过添加静态类型检查和一些新特性来增强JavaScript的功能。 它在JavaScript的基础上添加了类型系统…

if语句用法

if语句是单条件分支语句 定义:根据一个条件来控制程序执行流程(如图3.2)。 语法格式: if(表达式){ 若干语句 } ★注意★: ① 表达式的值必须是boolean 型; ② 不能用0代表false;用1代表 true&am…

Linux 之压缩与解压相关命令的基础用法

目录 1、zip 与 unzip 2、gzip 命令 3、tar 命令 1、zip 与 unzip 在桌面新建一个文件和文件夹用于测试 在 test 目录下有一个 1.txt 文件 我们使用 zip 命令对其压缩 用法: zip 自定义压缩包名 被压缩文件路径位置 zip myon.zip 1.txt 因为我们这里就是在 …

『运维备忘录』之 RegEx 正则表达式实例汇总

运维人员不仅要熟悉操作系统、服务器、网络等知识,甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作,持续给大家更新运维工作所需要接触到的知识点,希望大…

抽象类与抽象方法

文章目录 抽象类抽象类的特点 抽象方法抽象方法的特点 模板设计模式模板设计模式能解决的问题示例 #抽象类与抽象方法 抽象类 用abstract关键字来修饰一个类时,这个类就叫抽象类。 public abstract 类名{... }抽象类的特点 1)抽象类不能被实例化。 2&…

javaScript 深浅拷贝

javaScript深浅拷贝 浅拷贝 自己创建一个新的对象,来接受你要重新复制或引用的对象值。如果对象属性是基本的数据类型,复制的就是基本类型的值给新对象,但如果属性是引用数据类型,复制的就是内存中的地址,如果其中一个…

pip降级在pycharm中

PyCharm依赖于"–build-dir"参数安装第三方库,但该参数在最新的23.0版pip中已删除 解决办法就是降级pip,PyCharm中选择File,找到编译器,点击pip,勾选对应版本即可 或者在cmd中执行运行python -m pip install…

swift 长按桌面图标弹出快捷选项

文章目录 一、3D Touch二、主屏交互1. 静态添加2. 动态添加三、监听主屏交互按钮的点击事件四、预览和跳转1. 注册3D touch2. 实现协议3. 在目标控制器复写previewActionItems4. 使用UIContextMenuConfiguration一、3D Touch 3D Touch通过屏幕下方的压力感应器来感知不同的压力…

蓝桥杯Java B组历年真题(2013年-2019年)

一、2013年真题 1、世纪末的星期 使用日期类判断就行,这里使用LocalDate,也可以使用Calendar类 答案 2099 使用LocalDate import java.time.LocalDate; import java.time.format.DateTimeFormatter; // 1:无需package // 2: 类名必须Main, 不可修改p…

【AIGC】微笑的秘密花园:红玫瑰与少女的美好相遇

在这个迷人的画面中,我们目睹了一个迷人的时刻,女子则拥有一头柔顺亮丽的秀发,明亮的眼睛如同星河般璀璨,优雅而灵动,她的微笑如春日暖阳,温暖而又迷人。站在红玫瑰花瓣的惊人洪水中。 在一片湛蓝无云的晴…

YOLOv9有效提点|加入BAM、CloFormer、Reversible Column Networks、Lskblock等几十种注意力机制(二)

专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,主力高效涨点!!! 一、本文介绍 本文只有代码及注意力模块简介,YOLOv9中的添加教程:可以看这篇文章。 YOLOv9有效提点|加入SE、CBAM、ECA、SimA…

【机器学习300问】25、常见的模型评估指标有哪些?

模型除了从数据划分的角度来评估,我上一篇文章介绍了数据集划分的角度: 【机器学习300问】24、模型评估的常见方法有哪些?http://t.csdnimg.cn/LRyEt 还可以从一些指标的角度来评估,这篇文章就带大家从两个最经典的任务场景介绍…

天津公租房租金怎么算?附计算方式

天津公共租赁住房租金如何计算?附计算方法 天津市公共租赁住房租金租金标准建筑面积(100分-减分)。 公共租赁住房租金按照建筑面积计算。 应收租金以人民币计算,低于人民币的部分四舍五入。 具体内容见正文。 申请天津公共租赁住…

Go 与 Rust:导航编程语言景观

在当今构建软件时,开发者在编程语言上有着丰富的选择。两种脱颖而出的语言是 Go 和 Rust - 都很强大但却截然不同。本文将从各种因素比较这两种语言,以帮助您确定哪种更适合您的需求。 我们将权衡它们在并发、安全性、速度、互操作性等方面的方法。我们将…

软件系统开发流程规范

目的:规范系统开发流程,提高系统开发效率。 立项申请需求分析方案设计方案评审开发调整测试阶段系统培训试运行测试验收投入使用 所有文档过去进主页获取。

基于 STM32U5 片内温度传感器正确测算温度

目录预览 1、引言 2、问题 3、小结 01 引言 STM32 在内部都集成了一个温度传感器,STM32U5 也不例外。这个位于晶圆上的温度传感器虽然不太适合用来测量外部环境的温度,但是用于监控晶圆上的温度还是挺好的,以防止芯片过温运行。 02 问题…

MATLAB知识点:利用智能缩进整理代码

​讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili 节选自​第4章:MATLAB程序流程控制 小技巧&#x…

LZO索引文件失效说明

在hive中创建lzo文件和索引时,进行查询时会出现问题.hive的默认输入格式是开启小文件合并的,会把索引也合并进来。所以要关闭hive小文件合并功能!