Python教程(8)——一文弄懂Python字符串操作(下)

news2024/11/25 5:03:58

Python字符串操作

  • 字符串常用方法
  • 字符串更多方法介绍

字符串常用方法

字符串在编程中是一种不可或缺的数据类型,它在文本和字符数据时提供了丰富而强大的功能。掌握了字符串的使用方法,你能够更加便捷地进行文本处理、数据操作、用户交互等任务,从而提高编程效率和质量。

  • len():返回字符串的长度。
str1 = "Hello, World!"
length = len(str1)
print(length)  # 输出:13
  • lower():将字符串中的所有字符转换为小写。
str2 = "Hello, World!"
lower_str = str2.lower()
print(lower_str)  # 输出:hello, world!
  • upper():将字符串中的所有字符转换为大写。
str3 = "Hello, World!"
upper_str = str3.upper()
print(upper_str)  # 输出:HELLO, WORLD!
  • strip():移除字符串两端的空白字符。
str4 = "   Hello, World!   "
stripped_str = str4.strip()
print(stripped_str)  # 输出:Hello, World!
  • replace(old, new):将字符串中的指定部分替换为新的字符串。
str5 = "Hello, World!"
replaced_str = str5.replace("Hello", "Hi")
print(replaced_str)  # 输出:Hi, World!
  • split(delimiter):将字符串按指定的分隔符切分成多个子串,并返回一个列表。
str6 = "Hello, World!"
splitted_list = str6.split(",")
print(splitted_list)  # 输出:['Hello', ' World!']
  • join(iterable):将可迭代对象中的字符串元素拼接成一个字符串。
list7 = ["Hello", "World!"]
joined_str = " ".join(list7)
print(joined_str)  # 输出:Hello World!
  • startswith(prefix):判断字符串是否以指定的前缀开始。
str8 = "Hello, World!"
starts_with = str8.startswith("Hello")
print(starts_with)  # 输出:True
  • endswith(suffix):判断字符串是否以指定的后缀结束。
str9 = "Hello, World!"
ends_with = str9.endswith("World!")
print(ends_with)  # 输出:True
  • count(substring):返回指定子串在字符串中出现的次数。
str10 = "Hello, World!"
count = str10.count("o")
print(count)  # 输出:2
  • isdigit():判断字符串是否只包含数字字符。
str11 = "12345"
is_digit = str11.isdigit()
print(is_digit)  # 输出:True
  • isalpha():判断字符串是否只包含字母字符。
str12 = "Hello"
is_alpha = str12.isalpha()
print(is_alpha)  # 输出:True
  1. findstring):返回指定子串在字符串中第一次出现的索引,如果不存在返回-1。
str13 = "Hello, World!"
index = str13.find("World")
print(index)  # 输出:7

字符串的相关方法可以说是非常重要的,在平时的编程中都是非常经常使用到的,需要重点掌握以上的相关方法。

字符串更多方法介绍

在Python当中,字符串的操作方法很多,有些是常用的,有些可能不会很经常的使用到,但是需要真遇见了,还是需要需要明白其中方法的意思,所以我特意整理了以下字符串中的方法

函数名解释
capitalize()将字符串首字母大写
casefold()将字符串转换为小写并移除所有大小写特殊字符
center(width, fillchar)返回一个指定宽度的字符串,并在两侧填充指定字符
count(substring, start, end)统计子字符串在字符串中出现的次数
encode(encoding, errors)使用指定的编码方式对字符串进行编码
endswith(suffix, start, end)检查字符串是否以指定后缀结尾
expandtabs(tabsize)将字符串中的制表符转换为空格
find(substring, start, end)在字符串中查找子字符串,并返回索引
format(*args, **kwargs)格式化字符串
format_map(mapping)使用映射来格式化字符串
index(substring, start, end)在字符串中查找子字符串,并返回索引(无匹配时引发异常)
isalnum()检查字符串是否只包含字母和数字字符
isalpha()检查字符串是否只包含字母字符
isdecimal()检查字符串是否只包含十进制数字字符
isdigit()检查字符串是否只包含数字字符
isidentifier()检查字符串是否是一个合法的标识符
islower()检查字符串是否全为小写字母
isnumeric()检查字符串是否只包含数值字符
isprintable()检查字符串是否全部为可打印字符
isspace()检查字符串是否只包含空白字符
istitle()检查字符串是否为标题化(所有单词首字母大写)
isupper()检查字符串是否全为大写字母
join(iterable)在可迭代对象的每个元素之间插入字符串
ljust(width, fillchar)返回一个指定宽度的左对齐字符串,右侧填充指定字符
lower()将字符串转换为小写字母
lstrip(characters)移除字符串左边指定的字符
maketrans(x, y, z)创建字符映射转换表
partition(separator)根据指定的分隔符将字符串分成三部分
replace(old, new, count)替换字符串中的指定内容
rfind(substring, start, end)从右侧开始查找子字符串,并返回索引
rindex(substring, start, end)从右侧开始查找子字符串,并返回索引(无匹配时引发异常)
rjust(width, fillchar)返回一个指定宽度的右对齐字符串,左侧填充指定字符
rpartition(separator)根据指定的分隔符将字符串分成三部分(从右边开始)
rsplit(separator, maxsplit)从右侧开始以指定分隔符分割字符串
rstrip(characters)移除字符串右边指定的字符
split(separator, maxsplit)以指定分隔符分割字符串
splitlines(keepends)按照行分隔符分割字符串,并返回一个包含各行作为元素的列表
startswith(prefix, start, end)检查字符串是否以指定前缀开头
strip(characters)移除字符串两侧指定的字符
swapcase()将字符串中的大小写字母互换
title()将字符串转换为首字母大写的标题格式
translate(mapping)使用指定的映射表转换字符串
upper()将字符串转换为大写字母
zfill(width)在字符串左侧填充0直到达到指定宽度

以上几乎涵盖了所有字符串操作的方法,当然可能会有一些遗漏,欢迎指出

更多精彩内容,请关注同名公众:一点sir(alittle-sir)

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

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

相关文章

存储器分配算法

1.设计目的与要求 1.1设计目的 本设计的目的是使学生了解动态分区分配方式中使用的数据结构和分配算法,并进一步加深对动态分区存储管理方式及其实现过程的理解。 1.2设计要求 用C语言分别实现采用首次适应算法和最佳适应算法的动态分区分配过程malloc()和回收过程…

多表联合查询

1.创建student表 mysql> CREATE TABLE student ( -> id INT(10) NOT NULL UNIQUE PRIMARY KEY , -> name VARCHAR(20) NOT NULL , -> sex VARCHAR(4) , -> birth YEAR, -> department VARCHAR(20) , -> address VARCH…

【AWS 大赛】亚马逊云科技:2023 直冲云霄训练营入营考试报名与答题答案参考

目录 一、报名 (1)选择 “解决方案架构师-助理级” (2)未登录先注册账号 (3)登录 (4)报名 (5)报名成功 二、答题 (1)开始…

FreeRTOS(互斥信号量)

资料来源于硬件家园:资料汇总 - FreeRTOS实时操作系统课程(多任务管理) 目录 一、互斥信号量的定义与应用 1、互斥信号量的定义 2、互斥信号量的应用 3、简要了解递归互斥信号量 二、优先级翻转问题 1、运行条件 2、优先级翻转编程测试 三、互斥信号量的运…

[HDLBits] Exams/m2014 q3

Consider the function f shown in the Karnaugh map below. Implement this function. d is dont-care, which means you may choose to output whatever value is convenient. //empty

[HDLBits] Exams/2012 q1g

Consider the function f shown in the Karnaugh map below. Implement this function. (The original exam question asked for simplified SOP and POS forms of the function.) //

文本三剑客之grep命令和awk命令 1.0 版本

grep awk 1.grep命令1.1 基本格式1.2 常用选项 2.awk命令2.1 awk工作原理2.2 awk命令格式2.3 awk常用内置变量 1.grep命令 1.1 基本格式 grep [选项]… 查找条件 目标文件1.2 常用选项 选项功能 -m [ x ]匹配x次 后停止,x为具体数字-v取反 -i忽略字符大小写 -n显示匹配的 …

GrapeCity Documents for Excel, Java Edition Crack

GrapeCity Documents for Excel, Java Edition Crack 增加了对SpreadJS.sjs文件格式的支持: 更快地将大型Microsoft Excel文件转换为.sjs格式。 使用较小的占用空间保存导出的文件。 将Excel/SpreadJS功能导入SpreadJS/从SpreadJS导出。 从.sjs文件中压缩的JSON文件…

小程序发布注意事项

1、使用HBuildx的 发布 功能发布小程序,因为编译完的代码目录不是同一个 如果使用 运行 到小程序,最后发布的版本会显示”无法连接本地服务器“ 2、使用unicloud的云服务 uniCloud发行 | uni-app官网 阿里云的unicloud的话,使用request域名…

Docker启动、停止、删除容器的相关指令

关闭容器指令: docker stop name启动命令: docker start name删除容器: docker rm name 或 id查看所有容器id: docker ps -aq删除所有容器: docker rm docker ps -aq开启着的容器是不能被删除的。 查看容器信息&…

华为OD机试 - 最长连续子序列 - 双指针(Java 2023 B卷 100分)

目录 专栏导读一、题目描述二、输入描述三、输出描述备注 四、双指针1、双指针是什么?2、Java双指针算法适合解决哪些问题? 五、解题思路六、Java算法源码七、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专…

GUI、多线程编程、网络编程简介

GUI、多线程编程、网络编程简介 文章目录 GUI简介什么是GUIGUI有什么用使用方法 多线程编程什么是多线程编程多线程编程有什么用提高程序的响应能力提高程序的性能实现异步编程并发数据访问和共享资源实现复杂的算法和任务分解 进行多线程编程的步骤 网络编程什么是网络编程网络…

day6 STM32时钟与定时器

STM32时钟系统的概述 概念 时钟系统是由振荡器(信号源)、定时唤醒器、分频器等组成的电路。 常用的信号有晶体振荡器和RC振荡器。 意义 时钟是嵌入式系统的脉搏,处理器内核在时钟驱动下完成指令执行,状态变换等动作&#xff…

迪瑞克斯拉算法

迪锐克斯拉算法 简单来说就是在有向图中,给定一个图中具体的出发点,从这个点出发能够到达的所有的点,每个点的最短距离是多少。到不了的点,距离则是正无穷。有向,无负权重,可以有环。 所以说,迪…

Linux 终端命令之文件浏览(4) head, tail

Linux 文件浏览命令 cat, more, less, head, tail,此五个文件浏览类的命令皆为外部命令。 hannHannYang:~$ which cat /usr/bin/cat hannHannYang:~$ which more /usr/bin/more hannHannYang:~$ which less /usr/bin/less hannHannYang:~$ which head /usr/bin/he…

流量日志分析--实操

[鹤城杯 2021]流量分析 <--第一道流量分析不难,主要就是布尔盲注的流量包分析,直接查看http请求包即可我们可以通过观察看到注入成功的响应长度不同,这里成功的为978字节,失败的994字节.不要问为什么.其实也可以直接判断.978的流量比994的少了非常多 显然就是成功的(因为这里…

云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)

前言&#xff1a; 在前面一篇文章云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初始安装&#xff08;一&#xff09;_华为cna_晚风_END的博客-CSDN博客 介绍了基于VMware虚拟机里嵌套部署华为云的云计算&#xff0c;不过仅仅是做到了在VRM的web界面添加计算节点…

高效数据传输:轻松上手将Kafka实时数据接入CnosDB

本篇我们将主要介绍如何在 Ubuntu 22.04.2 LTS 环境下&#xff0c;实现一个KafkaTelegrafCnosDB 同步实时获取流数据并存储的方案。在本次操作中&#xff0c;CnosDB 版本是2.3.0&#xff0c;Kafka 版本是2.5.1&#xff0c;Telegraf 版本是1.27.1 随着越来越多的应用程序架构转…

keil构建STM32工程并使用proteus仿真led点灯实验

STM32单片机与51单片机有很大区别&#xff0c;不仅结构上有很大差异&#xff0c;STM32更复杂一些&#xff0c;在操作上来说&#xff0c;STM32也要复杂很多&#xff0c;51单片机上手写代码&#xff0c;可以很直接操作引脚&#xff0c;但是STM32单片机在操作引脚之前需要作很多初…

学无止境·运维高阶⑤(LVS-DR 群集 配置Nginx负载均衡)

LVS-DR 群集 && 配置Nginx负载均衡 一、LVS-DR 群集1、相关配置环境2、在RS上配置并启动脚本2.1相关脚本2.2 启动脚本&#xff0c;另一台RS同样步骤 3、LVS-DR模式配置脚本4、测试 二、Nginx负载均衡1、安装Nginx并关闭相应设置2、向主机 node2&#xff0c;node3 写入内…