python_day3_str

字符串str

按索引下标查找

str = 'Hi, world, follow, admin'
print(str[0])
print(str[-1])

在这里插入图片描述

index()

str = 'Hi, world, follow, admin'
print(str.index('world'))  #首字母下标
print(str.index('w'))

在这里插入图片描述

字符串.replace(字符串1,字符串2):将字符串内的"全部"字符串1替换为字符串2

字符串内容无法修改,replace方法会得到一个新的字符串

str1 = 'Hi, world, follow, admin'
new_str = str1.replace('w', 'W')
print(f"将{str1}执行替换操作后得到:{new_str}")

在这里插入图片描述

字符串.split(分割字符符串):按指定的分隔符字符串,将字符串划分为多个字符串,并存入列表对象中

str = 'Hi, world, follow, admin'
my_list = str.split(',')
print(f"将{str}按逗号切分后为:{my_list},类型为:{type(my_list)}")

在这里插入图片描述

strip()方法:默认去除字符串前后空格;若传入参数,去除指定字符

str1 = '   java python c c++    '
new_str = str1.strip()
print(f"str1:{str1}使用Strip()方法后为:{new_str}")str2 = '123java python c c++112233'
new_str = str2.strip("123")
print(f"str2:{str2}使用Strip()方法后为:{new_str}")str3 = '123java python c c++112233 123'
new_str = str3.strip("123")
print(f"str3:{str3}使用Strip()方法后为:{new_str}")str4 = '   123java python c c++112233  123'
new_str = str4.strip("123")
print(f"str4:{str4}使用Strip()方法后为:{new_str}")

在这里插入图片描述

count()方法,len()方法

str = '   123java python c c++112233  123'
print(f"'123'的个数为:{str.count('123')}")
print("字符串长度为:", len(str))

在这里插入图片描述

字符串遍历

str = 'java python c'
i = 0
while i < len(str):print("while循环遍历:", str[i])i += 1for element in str:print(f"for循环遍历:{element}")

在这里插入图片描述

序列:列表、元组、字符串

序列切片

序列[起始下标:结束下标:步长]:左闭右开[起始,结束)

my_list = [1, 2, 3, 4, 5, 6, 7, 8]
my_tuple = (1, 2, 3, 4, 5, 6, 7, 8)
my_str = '12345678'
print("my_list[1,3):", my_list[1:3])
print("my_tuple:", my_tuple[:])
print("my_str步长为2切片:", my_str[::2])

在这里插入图片描述

my_list = [1, 2, 3, 4, 5, 6, 7, 8]
my_tuple = (1, 2, 3, 4, 5, 6, 7, 8)
my_str = '12345678'
print("my_str逆序:", my_str[::-1])  # 逆序
print("my_tuple步长为2逆序切片:", my_tuple[::-2])
print("my_list(1,3]逆序切片:", my_list[3:1:-1])  # 从下标3逆序,到下标1但不包含下标1

在这里插入图片描述

小结

在这里插入图片描述

实战,将python切片,逆序输出

str = 'java python3 c++'
# 先切片,再逆序
# 从左往右,下标从0开始,p下标为5,左闭右开,截止到3的下标11,逆序。
new_str = str[5:11][::-1]
print(new_str)
# 先逆序,再切片
# 逆序,从右往左,+的下标为0,n的下标为5,右闭左开,截止到p后的空格的下标为11。
new_str = str[::-1][5:11]  # 左闭右开
print(new_str)
# 合并写法
# 逆序,从左往右,下标从0开始,n的下标为10,右闭左开,截止到p前的空格的下标为4。
new_str = str[10:4:-1]  # 下标从0开始
print(new_str)
# 使用split()方法与replace()方法
# 按空格分割为列表['java','python3','c++'],按下标取出下标为1的元素python3,将3替换为空,逆序
new_str = str.split(' ')[1].replace('3', '')[::-1]
print(new_str)

在这里插入图片描述

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

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

相关文章

【Elasticsearch】初识elasticsearch

目录 初识elasticsearch 1.1.了解ES 1.1.1.elasticsearch的作用 1.1.2.ELK技术栈 1.1.3.elasticsearch和lucene 1.1.4.为什么不是其他搜索技术&#xff1f; 1.1.5.总结 1.2.倒排索引 1.2.1.正向索引 1.2.2.倒排索引 1.2.3.正向和倒排 1.3.es的一些概念 1.3.1.文档…

数分面试题:赛马问题

问题一&#xff1a; 25匹马&#xff0c;一个赛道&#xff0c;每次可以跑5匹马&#xff0c;在没有计时器的情况下&#xff0c;怎么用最小的比赛次数知道最快的前三名 关键点&#xff1a;通过前面的比赛&#xff0c;排除掉没有悬念的马&#xff08;能确定有3匹马比它快的&#…

Android studio 引入不了R包,手动引入显示红色。可以跑起来却没问题

之前在这个问题踩坑2次&#xff0c;遂记录一下。 问题是&#xff1a;工程里找不到自己包名的R&#xff0c;手动导入显示红色&#xff0c;Run起来倒是没问题 尝试过Clean&#xff0c;Rebuild&#xff0c;清缓存&#xff0c;重启&#xff0c;都没用。 最终发现是没有在 Android…

【Web3】MetaMask钱包配置

目录 主网更换测试网 私钥如何登录钱包 主网更换测试网 私钥如何登录钱包

【WebGIS初学到入职】(15)入职一年的总结与分享

题外话 看看大纲可以怎么写&#xff0c;问问ChatGPT&#xff1a; ……算了&#xff0c;还是随便写写吧。 所以时间过得也是有够快的&#xff0c;这就一年了。 平淡 入职一年&#xff0c;已经看到好些位女同事结婚了&#xff08;男同事一个没有&#xff09;。领导和同事都挺…

使用ResponseBodyAdvice返回值为String出现cannot be cast to java.lang.String异常

使用ResponseBodyAdvice返回值为String出现cannot be cast to java.lang.String异常 背景 由于项目中为了全局返回统一的JSON格式&#xff0c;使用ResponseBodyAdvice进行拦截&#xff0c;拦截的时候会将返回的信息统一一个对象返回到前端。但是有的同事将一个String的响应对象…

Nuxt3 components公共组件

1.目录结构 效果实现&#xff1a;写一个公共的right组件&#xff0c;在index和about页面同时引用它 2.index页面引入 index页面显示效果 about页面引用及效果

文件共享平台Pingvin Share

本文完成于 2 月上旬。最近正好应网友要求折腾了 ClamAV&#xff0c;所以翻出来一起发了&#xff0c;可以作为 ClamAV 的一个应用示例&#xff1b; 什么是 Pingvin Share &#xff1f; Pingvin Share 是自托管文件共享平台&#xff0c;是 WeTransfer 的替代品。使用 Pingvin Sh…

【爬虫学习】1、利用get方法对豆瓣电影数据进行爬取

♥️作者&#xff1a;白日参商 &#x1f935;‍♂️个人主页&#xff1a;白日参商主页 ♥️坚持分析平时学习到的项目以及学习到的软件开发知识&#xff0c;和大家一起努力呀&#xff01;&#xff01;&#xff01; &#x1f388;&#x1f388;加油&#xff01; 加油&#xff01…

elk高并发架构

1.前言 普通的elk架构只适合数据量小的情景&#xff0c;而且也不安全&#xff0c;在瞬时数据量大的情况下可能会导致logstash崩溃&#xff0c;从而导致数据的丢失&#xff0c;对于数据安全有较高要求&#xff0c;可以在架构中加入消息队列&#xff0c;既可以防止瞬时的大流量并…

vue 进阶---动态组件 插槽 自定义指令

目录 动态组件 如何实现动态组件渲染 使用 keep-alive 保持状态 keep-alive 对应的生命周期函数 keep-alive 的 include 属性和exclude属性 插槽 插槽的基础用法 具名插槽 作用域插槽 自定义指令 自定义指令的分类 私有自定义指令 全局自定义指令 了解 eslint 插件…

B/S版手术麻醉系统源码,基于php、mysql和vue2开发

手术麻醉系统是一套以数字形式与医院信息系统&#xff08;如HIS、EMR、LIS、PACS等&#xff09;和医疗设备等软、硬件集成并获取围手术期相关信息的计算机系统&#xff0c;其核心是对围手术期患者信息自动采集、储存、分析并呈现。该系统通过整合围手术期中病人信息、人员信息、…