Python数据容器(字符串)

字符串


1.字符串
字符串也是数据容器的一种,字符串是字符的容器,一个字符串可以存放任意数量的字符。

2.字符串的下标索引

  • 从前向后,下标从0开始
  • 从后向前,下标从-1开始
# 通过下标索引获取特定位置的字符
name = 'python'
print(name[0]) # 结果 p
print(name[-1]) # 结果 n
  • 同元组一样,字符串也是一个无法修改的数据容器

3.字符串的常用操作

  • 查找特定字符串的下标索引值
    • 语法:字符串.index(字符串)
my_str = 'itcat and itheima'
print(my_str.index('and'))  # 输出 6
  • 字符串的替换
    • 语法:字符串.replace(字符串1,字符串2)
    • 功能:将字符串内的全部:字符串1,替换为字符串2
    • 注意:不是修改字符串本身,而是得到一个新的字符串
name = 'itcat and itheima'
new_name = name.replace('it','传智')
print(new_name)  #结果 传智cat and 传智heima
print(name)  # 结果 itcat and itheima
  • 字符串的分割
    • 语法:字符串.split(分割字符串)
    • 功能:按照指定的分隔符字符串,将字符串划分为多个字符串,并存入列表中
    • 注意:字符串本身不变,而是得到一个新的列表对象
name = 'itcat and itheima'
new_name = name.split(" ")
print(new_name)  # 结果 ['itcat', 'and', 'itheima']
  • 字符串的规整操作(去前后空格)
    • 语法:字符串.strip()
name = '  itcat and itheima  '
new_name = name.strip()
print(new_name)  # 结果 itcat and itheima
  • 字符串嗯对规整操作(去前后指定字符串)
    • 语法:字符串.strip(字符串)
name = '12itcat and itheima21'
new_name = name.strip('12')
print(new_name) # 结果 itcat and itheima
  • 统计字符串中某字符串的出现次数
    • 语法:字符串.count(字符串)
name = 'itcat and itheima'
num = name.count('it')
print(num)  # 结果 2
  • 统计字符串的长度
    • 语法:len(字符串)
name = 'itcat and itheima'
print(len(name))  # 结果 17
编号操作
1字符串[下标索引]根据索引取出特定位置的字符
2字符串.index(字符串)查找给定字符的第一个匹配项的下标
3字符串.replace(字符串1,字符串2)将字符串内的全部字符串1,替换为字符出串2;不会修改原字符串,而是得到一个新的
4字符串.split(字符串)按照给定的字符串,对字符串进行分隔不会修改原字符串,而是得到一个新的列表
5字符串.strip();字符串.strip(字符串)移除首尾的空格核换行符或指定字符串
6字符串.count(字符串)统计字符串内某字符串的出现的次数
7len(字符串)统计字符串的字符个数

4.字符串的遍历

  • while遍历
my_str = '程序员'
index = 0
while index < len(my_str):print(my_str[index])index += 1 # 结果 程序员
  • for遍历
my_str = '程序员'
for element in my_str:print(element) # 结果 程序员

5.字符串的特点

  • 只可以存储字符串
  • 长度任意(取决于内存大小)
  • 支持下标索引
  • 允许重复字符串存在
  • 不可以修改(增加或修改元素)
  • 支持while、for循环

6.练习
在这里插入图片描述

# 定义一个字符串
my_str = 'itheima itcast boxuegu'
# 统计字符串内有多少个'it'字符
print(f"字符串{my_str}中有:{my_str.count('it')}个it字符")
# 将字符串内的空格,全部替换为字符:“|”
print(f"字符串{my_str},被替换空格后,结果:{my_str.replace(' ','|')}")
# 并按照“|”进行字符分割,的带列表
new_str = my_str.replace(' ','|')
new_str2 = new_str.split("|")
print(f"字符串{new_str},按照|分隔后,得到:{new_str2}")
## 输出
字符串itheima itcast boxuegu中有:2个it字符
字符串itheima itcast boxuegu,被替换空格后,结果:itheima|itcast|boxuegu
字符串itheima|itcast|boxuegu,按照|分隔后,得到:['itheima', 'itcast', 'boxuegu']

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

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

相关文章

关于使用template时的错误注意

今天在写c程序的时候&#xff0c;在使用template时遇到了一个关于template的错误用法。代码如下#include <vector> #include <algorithm> #include <forward_list> #include <string> #include <list> using namespace std; template <typena…

TinyEngine 开源低代码引擎首次直播答疑QA合集

前言 10月27日晚8点&#xff0c;OpenTiny 社区开启了 TinyEngine 开源低代码引擎首次答疑直播&#xff0c;本次直播我们通过收集开发者诉求&#xff0c;精心策划和组织了内容&#xff0c;希望提供给大家最明确和清晰的答疑方式。这是 TinyEngine 低代码引擎直播计划的开端&…

React处理用户交互事件,如点击、输入框变化等,并使用事件处理函数来响应这些事件

在 React 中处理用户交互事件&#xff0c;如点击、输入框变化等&#xff0c;需要使用事件处理函数来响应这些事件。以下是一些学习和使用事件处理函数的基本步骤&#xff1a; 绑定事件处理函数&#xff1a; 首先&#xff0c;在你的组件中为要处理的元素&#xff08;如按钮、输…

探索OpenCV中直方图的神奇之处:应用与实现

文章目录 导言&#xff1a;直方图概述&#xff1a;函数原型参数说明&#xff1a;代码示例 应用场景&#xff1a;结语&#xff1a; 导言&#xff1a; 直方图是数字图像处理中一个强大而重要的工具&#xff0c;它通过可视化数据的分布情况&#xff0c;帮助我们更好地理解图像的特…

Flutter 第三方 flutter_screenutil(屏幕适配)

一直觉得自己写的不是技术&#xff0c;而是情怀&#xff0c;一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的&#xff0c;希望我的这条路能让你们少走弯路&#xff0c;希望我能帮你们抹去知识的蒙尘&#xff0c;希望我能帮你们理清知识的脉络&#xff0…

【Royalty in Wind 2.0.0】个人体测计算、资料分享小程序

前言 Royalty in Wind 是我个人制作的一个工具类小程序。主要涵盖体测计算器、个人学习资料分享等功能。这个小程序在2022年第一次发布&#xff0c;不过后来因为一些原因暂时搁置。现在准备作为我个人的小程序重新投入使用XD PS&#xff1a;小程序开发部分我是在21年跟随郄培…

vue3异步组件

父组件中&#xff0c;子组件的加载一般是按照先后顺序加载的&#xff0c;子组件加载后才会加载父组件。 一个页面的子组件很多&#xff0c;由于会先加载子组件&#xff0c;那么父组件可能会出现比较长的白屏等待时间 大型项目&#xff0c;可能需要拆分应用为更小的块&#xf…

FL Studio21.2宿主软件中文免费版下载

纵观当下宿主软件市场&#xff0c;正值百家争鸣、百花齐放之际像Mac系统的Logic Pro X、传统宿主软件代表Cubase、录音师必备Pro Tools、后起之秀Studio One等&#xff0c;都在各自的领域具有极高的好评度。而在众多宿主软件中&#xff0c;有这么一款历久弥新且长盛不衰的独特宿…

JAVA判断指定日期是否在指定的时间段内

参考文献: Java语言判断当前时间在时间范围内_java判断时间区间-CSDN博客 package com.itheima.method2;import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date;public class DateTest {public static voi…

sqli-bypass wp

sqli-bypass靶场 level 1 尝试注入点 1 ,1&#xff0c;1,1",1"" 》存在字符型单引号注入 id1and(1)-- >提示存在sql注入 bypass and、()、--都可能存在被屏蔽掉 尝试#代替-- id1and(1)%23 》 正常回显&#xff0c;说明–被屏蔽了&#xff0c;and&#xf…

VScode 右键没有转到定义等的菜单

问题&#xff1a; 右键点击该函数出现的结果只能是这样的&#xff1a; 解决&#xff1a; 通过修改 settings.json 文件&#xff0c;以解决问题&#xff1a; 这是原来有问题的配置&#xff1a; {"python.autoComplete.extraPaths": ["/home/robot/1-temp_mak…

数据库SQL

数据库&SQL 数据库基本概念数据库DataBase定义 数据库管理系统(DBMS)定义在JAVA项目中与数据库的结合数据库管理系统中常见的概念库与表的关系 SQL数据类型数字类型浮点类型字符类型TEXT类型日期类型 SQL语言的分类DDL:数据定义语言修改表结构的注意事项 DML:数据操作语言D…

力扣每日一题 ---- 2906. 构造乘积矩阵

这题很简单(一下就能想到是前缀和的提米)&#xff0c;但是在处理12345上面需要仔细一点&#xff0c;本来我最开始想到的时候全部累乘在除掉当前数&#xff0c;但是这样就没有把12345考虑进去&#xff0c;如果他本身是12345的话&#xff0c;那么除他以外的乘积并不一定是0&#…

rabbitMQ rascal/amqplib报错 Error: Unexpected close 排查

以下是一些可能导致此 RabbitMQ 客户端或任何其他 RabbitMQ 客户端中的套接字读取或写入失败的常见场景 1.错过&#xff08;客户端&#xff09;心跳 第一个常见原因是RabbitMQ 检测到心跳丢失。发生这种情况时&#xff0c;RabbitMQ 将添加一个有关它的日志条目&#xff0c;然…

多测师肖sir_高级金牌讲师_ui自动化po框架版本01

ui自动化po框架 一、po框架 1、基本介绍 &#xff08;1&#xff09;po模式是page object model的缩写&#xff08;简称&#xff1a;po或pom&#xff09; &#xff08;2&#xff09; po模式的核心思想&#xff1a;分层&#xff0c;实现耦合 实现&#xff1a;业务流程与页面元素操…

如何从存档服务器上完全删除PDM用户

当创建新用户时使用“PDM 登录”类型&#xff08;如下图&#xff09;&#xff0c;PDM用户名和密码会存储于存档服务器的注册表中。 存档服务器的注册表位置如下&#xff1a; HKEY_LOCAL_MACHINE\SOFTWARE\SolidWorks\Applications\PDMWorks Enterprise\ArchiveServer\ConisioU…

HTML的初步学习

HTML HTML 描述网页的骨架, 标签化的语言. HTML 的执行是浏览器的工作,浏览器会解析 html 的内容,根据里面的代码,往页面上放东西,浏览器的工作归根结底,还是以汇编的形式在CPU上执行. 浏览器对于html语法格式的检查没有很严格,即使你写的代码有一些不合规范之处,浏览器也会尽可…

Python(五)数字

常量 常量 描述pi数学常量 pi&#xff08;圆周率&#xff0c;一般以π来表示&#xff09;e数学常量 e&#xff0c;e即自然常数&#xff08;自然常数&#xff09; import math print(math.pi) print(math.e) 输出&#xff1a; 3.141592653589793 2.718281828459045运算符…

如此理解sed会简单

缘由 以前总觉得sed的语法过于难懂&#xff0c;用的时间都不一定会想起来怎么用。 每次都需要先查找帮助&#xff0c;然后才能应用&#xff0c;但随后又忘 &#x1f626; 直到今天通过man sed链接到sed官网上对sed的介绍&#xff0c;才明白它竟然是如此的简单明了&#xff0…

source activate my_env 和conda activate my_env 有什么区别

source activate my_env 和conda activate my_env 有什么区别 source activate 和 conda activate 是两个不同的命令&#xff0c;用于在Conda环境中激活特定的虚拟环境。它们的区别在于它们分别适用于不同版本的Conda。 source activate&#xff1a; source activate 是在Con…