Python - 数据容器str(字符串)

news2024/11/26 8:37:07

目录

字符串的定义

字符串的常用操作

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

字符串的替换 replace

字符串的分割 split

字符串的规整操作 strip

统计字符串中某字符串的出现次数 count

统计字符串的长度 len

字符串切片 [起始下标:结束下标:步长]


字符串的定义

和其它容器如:列表、元组一样,字符串也可以通过下标进行访问

从前向后,下标从0开始 ;从后向前,下标从-1开始

值得注意的是同元组一样,字符串是一个:无法修改的数据容器。所以有关字符串的任何修改操作都是错误的;

如果必须要做,只能得到一个新的字符串,旧的字符串是无法修改

字符串的常用操作

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

my_str="ab cde fg 123"
num="0123456789"

print(my_str.index("fg"))

7

字符串的替换 replace

  • 语法:字符串.replace(字符串1,字符串2)      
  • 功能:将字符串内的全部:字符串1,替换为字符串2      
  • 注意:不是修改字符串本身,而是得到了一个新字符串
my_str="about above"
new_str=my_str.replace("ab","AB")

print(my_str)
print(new_str)

about above
ABout ABove

字符串本身并没有发生变化,而是得到了一个新字符串

字符串的分割 split

  • 语法:字符串.split(分隔符字符串)      
  • 功能:按照指定的分隔符字符串,将字符串划分为多个字符串,并存入列表对象中      
  • 注意:字符串本身不变,而是得到了一个列表对象
my_str="about above    abandon abject"
new_str=my_str.split(" ")

print(my_str)
print(new_str)
print(type(new_str))

about above    abandon abject
['about', 'above', '', '', '', 'abandon', 'abject']
<class 'list'>

可见,字符串按照给定的 <空格>进行了分割,变成多个子字符串,并存入一个列表对象中

值得注意的是,如果存在连续的分割符,会将所有的分割符去除,除第一个分割符外,其余n-1分割符生成n-1个空字符串(若分割符在第一个,则第一个分割符也生成空串)

my_str1="a"
my_str2="abaac"

new_str1=my_str1.split("a")
new_str2=my_str2.split("a")


print(new_str1)
print(new_str2)

['', '']
['', 'b', '', 'c']

字符串的规整操作 strip

语法:字符串.strip()(去前后空格)

my_str="    about above    abandon abject  "
new_str=my_str.strip()

print(my_str)
print(new_str)

    about above    abandon abject  
about above    abandon abject

 语法:字符串.strip(字符串) (去前后指定字符串)

my_str="6a 1234567890 6a66baaab6a66ba6b"
new_str=my_str.strip("6ab")

print(my_str)
print(new_str)

6a 1234567890 6a66baaab6a66ba6b
 1234567890 

将前后含有字符串内容的字符去除,以不在字符串中的任意字符为分隔

统计字符串中某字符串的出现次数 count

my_str="about above abandon abject"
new_str=my_str.count("ab")

print(my_str)
print(new_str)

print(type(new_str))

about above abandon abject
4
<class 'int'>

每个字符只能算一次

my_str="a6aa6aa6aa"
new_str=my_str.count("a6aa")

print(my_str)
print(new_str)

a6aa6aa6aa
2

统计字符串的长度 len

数字(1、2、3...)

字母(abcd、ABCD等)

符号(空格、!、@、#、$等)

中文(文字和符合)

都算1个字符长度

my_str="123#$%^wdkj哈哈是 ~!、E(?/"
print(len(my_str))

22

字符串切片 [起始下标:结束下标:步长]

切片:从一个序列中,取出一个子序列

语法:序列[起始下标:结束下标:步长]

此操作不会影响序列本身,而是会得到一个新的序列(列表、元组、字符串)

起始下标与结束下标为左闭右开区间  [左,右) #注意不是[始,末)

my_str="0123456789"
print(my_str[:])#从头开始,到最后结束,步长1

print(my_str[1:5:1])#下标1开始,下标5(不含)结束,步长1

print(my_str[:4:2])#从头开始,到下标4(不含)结束,步长2

print(my_str[::2])#从头开始,到最后结束,步长2

print(my_str[::-1])#从头(最后)开始,到尾结束,步长-1(倒序)

print(my_str[6:1:-1])#从下标6开始,到下标1(不含)结束,步长-1(倒序)

print(my_str[:1:-2])#从头(最后)开始,到下标1(不含)结束,步长-2(倒序)

0123456789
1234
02
02468
9876543210
65432
9753

编号

操作

说明

1

字符串[下标]

根据下标索引取出特定位置字符

2

字符串.index(字符串)

查找给定字符的第一个匹配项的下标

3

字符串.replace(字符串1, 字符串2)

将字符串内的全部字符串1,替换为字符串2

不会修改原字符串,而是得到一个新的

4

字符串.split(字符串)

按照给定字符串,对字符串进行分隔

不会修改原字符串,而是得到一个新的列表

5

字符串.strip()

字符串.strip(字符串)

移除首尾的空格和换行符或指定字符串

6

字符串.count(字符串)

统计字符串内某字符串的出现次数

7

len(字符串)

统计字符串的字符个数

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

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

相关文章

银行案例分析:识别个人贷款客户画像,实现精准营销与风险防范

作为商业银行最主要的业务活动&#xff0c;也是收益最大的活动&#xff0c;贷款于银行的重要性不言而喻。又由于个人贷款是银行贷款不可或缺的一部分&#xff0c;那么了解个人贷款客户画像就有助于银行对客户进行精准销售和风险识别。 # 选手介绍 #张昊泽&#xff1a;亚利桑那州…

Pycharm入门搭建Django 项目

一、环境准备 1、pycharm版本 2、python版本 二、创建项目 击左上角的 File -> New Project 点击Create创建完成之后页面等待下载环境 查看Django的版本 python -m django --version 启动项目 python manage.py runserver 三、后记 在启动 Django 项目的时候我发现控制台…

【PaaS】分享一家最近发现的宝藏Paas厂家

目录 一、结识独自开 二、独自开的介绍 三、独自开的需求 四、独自开注册流程 五、神仙公司独自开 一、结识独自开 算是机缘巧合&#xff0c;我被C站白佬拉入了他的聊天群&#xff0c;群内均是来自于CSDN的不同领域的优质作者&#xff0c;其中不乏相关领域工作多年的老工程…

第一层:封装

文章目录前言类和对象封装class权限publicprotectedprivatestruct和class的区别封装的好处封装的用法学完封装&#xff0c;突破第一层&#x1f389;welcome&#x1f389; ✒️博主介绍&#xff1a;一名大一的智能制造专业学生&#xff0c;在学习C/C的路上会越走越远&#xff0c…

【电子学会】2022年12月图形化四级 -- 金牌百分比

金牌百分比 计算金牌榜前十的国家获得的金牌总数占金牌总数的百分比。金牌榜前十的国家获得的金牌总数占金牌总数的百分比等于(金牌榜前十国家的金牌总数本届冬奥会金牌总数)100,并将这个数向下取整。 1. 准备工作 (1)保留舞台默认背景及角色小猫; (2)建立变量“金牌…

YOLOALL 一文了解YOLO各版本答案

来源&#xff1a;投稿 作者&#xff1a;ΔU 编辑&#xff1a;学姐 YoloAll项目简介 相信了解YOLO的小伙伴们一定都有这样的困扰&#xff0c;目前YOLO各个版本数量非常多&#xff0c;不知道在实际场景中应该选择哪个YOLO版本。甚至有时为了比较两个不同版本的YOLO的效果&#x…

python标准库xmlrpc 之RPC远程方法调用

&#x1f496;&#x1f496;&#x1f496;养成每日阅读好习惯, 每天进步, 超越昨天的自己&#x1f496;&#x1f496;&#x1f496; 愿景&#xff1a;输出体系化编程知识与技巧&#xff0c;助力软件行业发展与从业者学习减负&#xff0c;让编程产生更大价值。 &#x1f50e;&am…

【linux】之网络安全

防火墙作用 在计算机领域,防火墙是用于保护信息安全的设备,其会依照用户定义的规则,允许或限制数据的传输。 用于保护内网安全的一种设备依据规则进行防护用户定义规则允许或拒绝外部用户访问防火墙分类 逻辑上划分,防火墙可以大体分为主机防火墙和网络防火墙 主机防火墙:…

服务注册与发现:Nacos Discovery

目录 一、概述 二、Nacos discovery——服务的注册与发现 1. 版本关系 2. 下载安装 &#xff08;1&#xff09;下载 &#xff08;2&#xff09;启动 &#xff08;3&#xff09;浏览器访问 三、Nacos服务注册与发现实战 1. 构建Spring Cloud Alibaba工程 &#xff08;1&…

Vite性能优化之分包策略

为什么需要分包策略&#xff1f; 浏览器的缓存策略 浏览器在请求静态资源时&#xff0c;只要静态资源的名称不变&#xff0c;它就不会重新请求 xxx.js资源。 使用Vite打包后的js文件是带有哈希值的&#xff0c;只要我们的代码内容有一点点变化&#xff0c;那么文件的hash值都…

ConfigMap

目录 文章目录目录本节实战前言1、创建:warning: yaml里易混淆的点&#xff08;1&#xff09;|用法&#xff08;2&#xff09;|和|-用法&#xff08;3&#xff09;>用法1.通过资源清单文件方法创建ConfigMap2.通过from-file关键字创建ConfigMap&#xff08;1&#xff09;fro…

二十九、Kubernetes中CronJob(CJ)详解

1、概述 在kubernetes中&#xff0c;有很多类型的pod控制器&#xff0c;每种都有自己的适合的场景&#xff0c;常见的有下面这些&#xff1a; ReplicationController&#xff1a;比较原始的pod控制器&#xff0c;已经被废弃&#xff0c;由ReplicaSet替代 ReplicaSet&#xff…

yolov5训练自己的数据集,OpenCV DNN推理

学更好的别人&#xff0c; 做更好的自己。 ——《微卡智享》 本文长度为4238字&#xff0c;预计阅读9分钟 前言 上一篇《OpenCV--自学笔记》搭建好了yolov5的环境&#xff0c;作为目标检测在应用中&#xff0c;最重要的还是训练自己的数字集并推理&#xff0c;所以这一篇就专门…

『Kubernetes』在Linux中快速安装K8S集群

&#x1f4e3;读完这篇文章里你能收获到 K8S安装全过程博主自己实操笔记带你跳过所有坑感谢点赞收藏&#xff0c;避免下次找不到~ 文章目录一、基本环境配置1. 关闭selinux2. 关闭swap分区或禁用swap文件3. 修改网卡配置4. 关闭防火墙5. 设置机器HostName6. 更新系统时间二、k…

Vue 2.x源码学习:数据响应式改造

众所周知&#xff0c;Vue是以数据驱动视图展示的&#xff0c;即Vue会监听数据的变化&#xff0c;从而自动重新渲染页面的结构。 Vue主要通过三步走来实现这个功能&#xff1a; 第一步是对数据进行响应式改造&#xff0c;即对数据的读写操作进行劫持&#xff1b; 第二步是对模…

字符数组编程题(C语言)

文章目录1、用字符%c的形式给一个字符数组赋初值&#xff0c;然后以字符串%s的形式输出2、用字符getchar&#xff08;&#xff09;的形式给一个字符数组赋初值&#xff0c;然后以字符串puts&#xff09;的形式输出4、从键盘上输入一串字符gets&#xff0c;然后输出%s5、从键盘输…

Mysql导出100万条数据,9种导出方法优缺点和速度、文件大小测试

这里写目录标题1.DBase文件2.文本文件3. CSV文件4.HTML文件5.Excel数据表低版本6.Excel文件2007年以后版本7.SQL脚本文件8.XML文件9.JSON文件总结这一次我主要就是想针对mysql导出的速度和文件大小进行优缺点测试&#xff0c;这次主要就是用上之前生成的天气表这是表里面的数据…

除夕New Year Eve,祝大家团圆幸福!

除夕&#xff0c;为岁末的最后一天夜晚,意为旧岁至此而除&#xff0c;另换新岁。New years Eve is the last night at the end of the year.which means that the old year will be removed and a new year will be replaced.除夕&#xff0c;在国人心中是具有特殊意义的&#…

第一章 TCP/IP 协议

作者简介&#xff1a;一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭&#xff1a;低头赶路&#xff0c;敬事如仪 个人主页&#xff1a;网络豆的主页​​​​​​ 目录 前言 一.什么是TCP/IP ​编辑 二.什么是协议 1.三要素 2.协议与标准区别 三.广…

中小型企业如何从企业内容管理 (ECM) 系统提供的工具中受益?

在当今快节奏的商业世界中&#xff0c;时间变得非常宝贵。团队越大&#xff0c;就越难有效地管理时间。但即使是中小型企业也可以从企业内容管理 (ECM) 系统提供的工具中受益。 ECM 系统使各种规模的企业能够通过数字化纸质文档、捕获电子文档和电子邮件、自动化文档驱动的流…