字符串的定义和操作 继续!

news2025/1/18 9:50:11

字符串的定义和操作

1)定义

与列表、元组一样,字符串也可以通过下标进行访问

·从前向后,下标从0开始

·从后向前,下标从-1开始

my_str = "green"
# 通过下标索引取值
value = my_str[0]
value2 = my_str[-5]
print(f"从字符串{my_str}取下标为0的元素,值是:{value}")
print(f"从字符串{my_str}取下标为-5的元素,值是:{value2}")


从字符串green取下标为0的元素,值是:g
从字符串green取下标为-5的元素,值是:g

同元组一样,字符串是一个:无法修改的数据容器

所以:

·修改指定下标的字符 (如:字符串[0] = "a")

·移除特定下标的字符 (如:del字符串[0] 、字符串.remove() 、字符串.pop等)

·追加字符等 (如:字符串append.())

均无法完成。如果必须要做,只能得到一个新的字符串,老的字符串无法修改。

my_str[2] = "g"


TypeError: 'str' object does not support item assignment

2)字符串常用操作

·查找特定字符串的下标索引值

语法:字符串.index(字符串)

my_str = "green and red"
# 查找特定字符串的下标索引值 语法:字符串.index(字符串)
value = my_str.index("and")
print(f"在字符串{my_str}中查找and其实下标是: {value}")


在字符串green and red中查找and其实下标是:6

·字符串的替换

语法:字符串.replace(字符串1, 字符串2)

功能:将字符串内的全部:字符串1替换为字符串2

注意:不是修改字符串本身,而是得到了一个新字符串

# 字符串的替换 语法:字符串.replace(字符串1, 字符串2)
my_str = "green and red"
new_mystr = my_str.replace("e", "g")
print(f"将字符串{my_str}进行替换后得到:{new_mystr}")


将字符串green and red进行替换后得到:grggn and rgd

·字符串的分割

语法:字符串.split(分隔符字符串)

功能:按照指定的分隔符字符串,将字符串划分为多个字符串,并存入列表对象中

注意:字符串本身不变,而是得到了一个列表对象

# 字符串的分割  语法:字符串.split(分隔符字符串)
my_str = "hi what how there"
my_list_str = my_str.split(" ")
print(f"将字符串{my_str}进行split切分后得到:{my_list_str},类型是:{type(my_list_str )}")


将字符串hi what how there进行split切分后得到:['hi', 'what', 'how', 'there'],类型是:<class 'list'>

·字符串的规整操作(去前后空格)

语法:字符串.strip()

my_str = " hi what how there "
# 字符串的规整操作(去前后空格)  语法:字符串.strip()
new_my_str = my_str.strip() # 不传入参数,去除首尾空格
print(f"字符串{my_str}被strip后,结果:{new_my_str}")


字符串 hi what how there 被strip后,结果:hi what how there

·字符串的规整操作(去前后指定字符串)

语法:字符串.strip(字符串)

my_str = "12hi what how there21"
new_my_str = my_str.strip("12")
print(f"字符串{my_str}被strip后,结果:{new_my_str}")


字符串12hi what how there21被strip后,结果:hi what how there

·统计字符串中某字符串的出现次数 字符串.count()

my_str = " hi what how there "
count = my_str.count("e")
print(f"字符串中{my_str}中e出现的次数是{count}")


字符串中 hi what how there 中e出现的次数是2

·统计字符串的长度  字符串len()

my_str = " hi what how there "
num = len(my_str)
print(f"字符串{my_str}的长度是:{num}")


字符串 hi what how there 的长度是:19

3)字符串的遍历

与列表、元组一样,字符串也支持while循环和for循环进行遍历

# while循环
my_str = "欣欣向荣"
index = 0
while index < len(my_str):
    print(my_str[index])
    index += 1


欣
欣
向
荣



# for循环
my_str = "欣欣向荣"
for i in my_str:
    print(i)


欣
欣
向
荣

4)字符串的特点

·只可以存储字符串

·长度任意(取决于内存大小)

·支持下标索引

·允许重复字符串存在

·不可以修改(增加或删除元素等)

·支持for循环

完结 🎉 继续更新 加个关注收藏一下叭~ 

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

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

相关文章

k8s pv 一直是release状态

如下图所示&#xff0c;pv 一直是release状态 这个时候大家可能就会想到现在我的 PVC 被删除了&#xff0c;PV 也变成了 Released 状态&#xff0c;那么我重建之前的 PVC 他们不就可以重新绑定了&#xff0c;事实并不会&#xff0c;PVC 只能和 Available 状态的 PV 进行绑定。…

什么是谷歌爬虫?

其实就是谷歌用来浏览网络信息的一个自动化程序&#xff0c;他们会在你的网站爬取&#xff0c;寻找和搜集信息&#xff0c;谷歌爬虫可以说决定着一个网站在谷歌的生死 谷歌爬虫的作用机制就在于发现新网站以及新网页&#xff0c;然后他会把网页的内容带回去&#xff0c;更新到…

嵌入式科普(18)Ubuntu在移动硬盘的安装和启动

目录 一、概述 二、应用场景 三、移动硬盘安装Ubuntu 3.1 移动硬盘格式化 3.2 VMware安装Ubuntu到移动硬盘 四、电脑BIOS启动移动硬盘Ubuntu 五、从VMware启动移动硬盘Ubuntu 六、问题解决(坑)和思考提问 嵌入式科普(18)Ubuntu在移动硬盘的安装和启动 一、概述 在移动硬…

Thingsboard规则链:Entity Type Filter节点详解

在物联网&#xff08;IoT&#xff09;的世界里&#xff0c;数据的多样性与复杂性要求处理架构具备高度的灵活性和针对性。ThingsBoard作为一款强大的物联网平台&#xff0c;通过其规则链&#xff08;Rule Chains&#xff09;机制&#xff0c;让数据的自动化处理变得既强大又灵活…

设计模式7——建造者模式

写文章的初心主要是用来帮助自己快速的回忆这个模式该怎么用&#xff0c;主要是下面的UML图可以起到大作用&#xff0c;在你学习过一遍以后可能会遗忘&#xff0c;忘记了不要紧&#xff0c;只要看一眼UML图就能想起来了。同时也请大家多多指教。 建造者模式&#xff08;Builde…

C++下的内存管理

文章目录 内存分布C语言中动态内存管理方法C内存管理new/delete操作内置类型new和delete操作自定义类型operator new 和 operator deletenew和delete的实现原理定位new表达式 malloc/free和new/delete的区别内存泄漏 内存分布 栈&#xff1a;又叫做堆栈–非静态局部变量/函数参…

Sketch v100 for Mac 安装教程【支持M芯片】

Sketch v100 for Mac 安装教程【支持M芯片】 原文地址&#xff1a;https://blog.csdn.net/weixin_48311847/article/details/139104315

秀某动预约抢票脚本

秀某动预约抢票脚本 小白操作-仅供学习参考 主要流程和功能 初始化和配置变量: confirm_url 和 login_url: 分别存储登录和确认订单的URL。 wait_time: 用户输入的提前多少秒开始执行。 start_time: 开售时间。 DEBUG: 调试标志&#xff0c;用于控制脚本的行为。 浏览…

4. C++入门:内联函数、auto关键字、范围for及nullptr

内联函数 概念 以inline修饰的函数叫做内联函数&#xff0c;编译时C编译器会在调用内联函数的地方展开&#xff0c;没有函数调用建立栈帧的开销&#xff0c;内联函数提升程序运行的效率 对比C的宏 C语言不足&#xff1a;宏 #define ADD(x, y) ((x)(y))int main() {int ret…

Spring框架中获取方法参数名称:DefaultParameterNameDiscoverer

DefaultParameterNameDiscoverer 是Spring框架中用于获取方法参数名称的一个类。在Java中&#xff0c;方法的参数名称通常在编译时会丢失&#xff0c;因为Java字节码并不强制要求保留这些信息。Spring提供了一种机制来恢复这些参数名称&#xff0c;这就是通过DefaultParameterN…

工厂模式(简单工厂模式+工厂模式)

工厂模式的目的就是将对象的创建过程隐藏起来&#xff0c;从而达到很高的灵活性&#xff0c;工厂模式分为三类&#xff1a; 简单工厂模式工厂方法模式抽象工厂模式 在没有工厂模式的时候就是&#xff0c;客户需要一辆马车&#xff0c;需要客户亲自去创建一辆马车&#xff0c;…

javaSwing仓库商品管理系统(文档+视频+源码)

摘要 Java swing实现的一款简单的仓库商品管理系统&#xff0c;数据库采用的是mysql&#xff0c;本系统实现了两个角色层面的功能&#xff0c;管理员可以管理用户、仓库、商品信息等。普通用户登录后可以查看商品、仓库信息及个人信息。 系统实现 登录界面&#xff1a; 我们…

MySQL中锁的几种类型

MySQL根据加锁的范围&#xff0c;可以分为全局锁、表级锁、行级锁三类。 2.5.1. 锁定读 2.5.1.1. 共享锁和独占锁 事务的 读-读 情况并不会引起什么问题&#xff0c;对于 写-写、读-写 或 写-读 这些情况可能会引起一些问题&#xff0c;需要使用MVCC或者加锁的方式来解决。在…

ubuntu server 22.04 使用docker安装 onlyoffice 8.0同时添加中文字体、字号

本文主要介绍在ubuntu server 22.04 系统上使用docker安装onlyoffice 8.0同时添加中文字体、字号方法。 1、硬件要求 CPU&#xff1a;双核2 GHz或更高 内存&#xff1a;最少4GB 硬盘&#xff1a;至少40 GB可用空间 Swap file&#xff1a;至少4 GB&#xff0c;但取决于主机操作…

vmware 17pro17.5 bug 严重,建议升级17.52

近日vmware发布17.52 更新&#xff0c;修复了一个重大BUG. 也就是莫名其妙的CPU跟GPU占用问题。 我的系统是WIN11 跟VMWARE17.5..近日莫名其妙的发现即使什么都没运行&#xff0c;GPU占用也高达20%。开始以为中毒了被拿去挖矿了&#xff0c;后面看到VMWARE的这个更新&#xf…

最大连续1的个数(滑动窗口)

算法原理&#xff1a; 这道题大眼一看是关于翻转多少个0的问题&#xff0c;但是&#xff0c;如果你按照这种思维去做题&#xff0c;肯定不容易。所以我们要换一种思维去做&#xff0c;这种思维不是一下就能想到的&#xff0c;所以想不到也情有可原。 题目是&#xff1a;给定一…

中间件是什么?信创中间件有哪些牌子?哪家好用?

当今社会&#xff0c;中间件的重要性日益凸显&#xff0c;尤其是在信创背景下&#xff0c;选择适合的中间件产品对于推动企业数字化转型和升级具有重要意义。今天我们就来聊聊中间件是什么&#xff1f;信创中间件有哪些牌子&#xff1f;哪家好用&#xff1f;仅供参考哈&#xf…

15:00面试,15:08出来,面试问的有点变态。。。。

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 从小厂出来&#xff0c;没想到在另一家公司又寄了。 到这家公司开始上班&#xff0c;加班是每天…

Java开发工具类(JDK、Hutool、Guava)

目录 Java开发常用的工具类1、JDK自带程序读取控制台输入内容&#xff08;调试程序或者学习的时候比较有用&#xff09;Arrays工具类 数组转集合Collections 集合工具类 排序Collections 集合工具类 查找Lambda表达式 操作集合 收集、转map、分组 2、Apache 的 commons-lang3 和…

面试框架【面试准备】

前言 2023-9-12 12:12:04 2023-09-14 16:13:04 公开发布于 2024-5-22 00:16:21 以下内容源自《【面试准备】》 仅供学习交流使用 版权 禁止其他平台发布时删除以下此话 本文首次发布于CSDN平台 作者是CSDN日星月云 博客主页是https://blog.csdn.net/qq_51625007 禁止其他平…