Python截取字符串(字符串切片)方法详解_字符串切片包含两端吗-程序员宅基地

技术标签: Python基础教程,Python入门教程(非常详细)  Python字符串切片  字符串切片方法详解  截取字符串方法详解  Python截取字符串  Python  

Python截取字符串(字符串切片)方法详解

从本质上讲,字符串是由多个字符构成的,字符之间是有顺序的,这个顺序号就称为索引(index)。Python 允许通过索引来操作字符串中的单个或者多个字符,比如获取指定索引处的字符,返回指定字符的索引值等。

获取单个字符

知道字符串名字以后,在方括号[ ]中使用索引即可访问对应的字符,具体的语法格式为:

strname[index]

strname 表示字符串名字,index 表示索引值。

Python 允许从字符串的两端使用索引:

当以字符串的左端(字符串的开头)为起点时,索引是从 0 开始计数的;字符串的第一个字符的索引为 0,第二个字符的索引为 1,第三个字符串的索引为 2 ……

当以字符串的右端(字符串的末尾)为起点时,索引是从 -1 开始计数的;字符串的倒数第一个字符的索引为 -1,倒数第二个字符的索引为 -2,倒数第三个字符的索引为 -3 ……

请看下面的实例演示:
url = ‘http://www.baidu.com/’
#获取索引为1的字符
print(url[1])
#获取索引为 -2 的字符
print(url[-2])
运行结果:
t
m

获取多个字符(字符串截去/字符串切片)

使用[ ]除了可以获取单个字符外,还可以指定一个范围来获取多个字符,也就是一个子串或者片段,具体格式为:

strname[start : end : step]

对各个部分的说明:

strname:要截取的字符串;

start:表示要截取的第一个字符所在的索引(截取时包含该字符)。如果不指定,默认为 0,也就是从字符串的开头截取;

end:表示要截取的最后一个字符所在的索引(截取时不包含该字符)。如果不指定,默认为字符串的长度;

step:指的是从 start 索引处的字符开始,每 step 个距离获取一个字符,直至 end 索引出的字符。step 默认值为 1,当省略该值时,最后一个冒号也可以省略。

【实例1】基本用法:

url = 'http://www.baidu.com/'
#获取索引从2处到9(不包含9)的子串
print(url[2: 9]) # 输出 zy
#获取索引从10处到-1的子串
print(url[10: -1]) # 输出 zyit.org is very
#获取索引从-21到6的子串
print(url[-20: -1])
#从索引3开始,每隔4个字符取出一个字符,直到索引22为止
print(url[3: 20: 4])

运行结果:

tp://ww
.baidu.com
http://www.baidu.co
pwa.

【实例2】高级用法,start、end、step 三个参数都可以省略:

url = 'http://www.baidu.com/'
#获取从索引2开始,直到末尾的子串
print(url[2: ])
#获取从索引-20开始,直到末尾的子串
print(url[-20: ])
#从开头截取字符串,直到索引20为止
print(url[: 20])
#每隔3个字符取出一个字符
print(url[:: 5])

运行结果:

tp://www.baidu.com/
http://www.baidu.com/
http://www.baidu.com/
h/.u/
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ccc369639963/article/details/123656987

智能推荐

移植Ubuntu-base-14.04到firefly-rk3288的开发板上_rk3328 ubuntu-base desktop-程序员宅基地

文章浏览阅读3.3k次,点赞3次,收藏9次。1.先从官方上获取ubuntu core的tar包:$ wget http://cdimage.ubuntu.com/ubuntu-base/releases/14.04/release/ubuntu-base-14.04-core-armhf.tar.gz2.下载完后,解压到rootfs/ubuntu目录:$ mkdir ubuntu$ sudo tar -xpf ubunt..._rk3328 ubuntu-base desktop

python编写时怎么换行_python换行-程序员宅基地

文章浏览阅读6.8k次,点赞2次,收藏4次。我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。_python换行

最小凸包算法-程序员宅基地

文章浏览阅读608次。使用Graham扫描法进新解决最小凸包问题先找到最左下端点然后根据极角来进行逆时针排序在根据相对极角增减来去除不需要的点C++代码 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5..._echarts 凸包算法

mac安装python第三方库无法使用~_mac pycharm pypdf2库 运行0%-程序员宅基地

文章浏览阅读2k次,点赞3次,收藏6次。今天终于把接口自动化框架的方法封装成包,可以使用pip命令进行安装啦,灰常开心~but安装成功后发现无法使用~想哭经过各种查阅才发现原因有两点,使用pip命令安装的版本不对。pip安装地目录和项目里的第三方库路径不一致导致。首先针对第一点先排查电脑安装了几个python?mac自带python2,而你又安装了python3,那么使用pip 安装第三方库,默认安装到python2下~所以:只有一个python,直接使用pip安装没问题,但是如果既有python2又有python3,而你_mac pycharm pypdf2库 运行0%

postman本地测试接口的地址路径,如何获取和拼接_postman的地址怎么查-程序员宅基地

文章浏览阅读1.7w次,点赞14次,收藏48次。首先,在本地进行接口自测,那么就是本地的ip,既:http://localhost,其他就是其他的ip地址。接着是端口号以及所添加的共用路径,我们可以从springboot项目的配置文件application.yml获取,找到server: # 服务器的HTTP端口,默认为8081 port: 8202 servlet: # 应用的访问路径 context-path: /avrs这里的port就是端口号,context-path则是共用路径,此时的路径就拼接._postman的地址怎么查

随便推点

【RecyclerView】【Glide】列表加载多图卡顿_recyclerview+glide 卡顿-程序员宅基地

文章浏览阅读3.1k次。记录一次列表加载很多图片时卡顿的问题现象:仿微信朋友圈列表,多图九宫格布局,随着加载数据的增加,列表越来越卡顿,但是再次刷新之后,列表重归流畅问题猜测及尝试解决:1.图片缓存增多:采用图片加载栈缓存清除+预加载方案,实测效果并不理想,非本质问题2.图片缩放处理:调用override() 方法,对图片进行压缩,实测确实有效果,单还会有卡顿现象,增大压缩率后,卡顿现象确实有很大的优化,但是伴随的却是列表中的图片非常模糊.....3.图片的圆角处理:在咨询了一位安卓大佬后,提出了把图片的._recyclerview+glide 卡顿

Tomcat 8(二)server.xml详解_tomcat8 server.xml-程序员宅基地

文章浏览阅读1.6k次。Tomcat服务器是由一系列可配置的组件构成的,其中核心组件是Catalina Servlet,它是最顶层组件。Tomcat的各组件是在server.xml(CATALINA_HOME\conf\server.xml)配置的Tomcat各组件关系图1. ServerServer即Catalina servlet组件,它是server.xml的最外层元素常用属性:Ad_tomcat8 server.xml

day48:54. 二叉搜索树的第k大节点(递归)_给一个二叉查找树(bst),找出第 k 大的值,递归讲解-程序员宅基地

文章浏览阅读201次。问题描述:给定一棵二叉搜索树,请找出其中第k大的节点。使用递归,这里是求解第k大的节点 所以可以将中序遍历倒过来进行,中序遍历先遍历左子树,根节点,右子树,现在先遍历右子树,根节点,左子树,这样就可以倒着找第k大的节点。如果找到该节点立马返回,不用再遍历左子树了,节省时间。class Solution {public: int ans; int kthLargest(TreeNode* root, int k) { dfs(root,k); retur_给一个二叉查找树(bst),找出第 k 大的值,递归讲解

如何在AIX 4.3中安装联机手册?_aix联机-程序员宅基地

文章浏览阅读888次。使用联机手册之前,需安装相应的软件包。 解答 AIX 4.3 安装介质包含两张联机文档光盘(Documentation CD): Base Documentation CD 和 Extended Documentation CD。使用命令man查看系统命令之前 需要按照下列步骤安装相应的软件包: a. 正确设置环境变量LANG的值,如“en_US”为英文环境,“zh_CN”为简体中文环境。可以用_aix联机

linux卸载、离线安装docker,安装Portainer工具_trying to pull repository docker.io/library/mysql -程序员宅基地

文章浏览阅读1.3k次,点赞18次,收藏21次。"进行安装,但是我执行之后docker安装失败(这里错误信息忘复制了,大概就是找不到docker-c),然后决定直接从docker源下载docker文件放到服务器中启动。查询是因为docker版本太旧不匹配导致安装失败,"yum install docker"安装的是13.*版的docker,然后需执行"yum install -y docker-ce。原计划通过yum安装但是执行"yum install docker" 安装docker成功之后,使用docker安装mysql5.7提示以下错误。_trying to pull repository docker.io/library/mysql ... missing signature key

【TensorRT系列笔记-01】TensorRT 5.0.2.6 安装-程序员宅基地

文章浏览阅读1.7k次。官方下载地址:https://developer.nvidia.com/nvidia-tensorrt-5x-download选择对应版本,根据你的OS以及CUDA选择对应的版本,如下图所示:对下载好的文件进行更名,并解压;tar -xzvf TensorRT-5.0.2.6.tar.gz配置环境变量:vim ~/.bashrc添加环境变量:exp..._tensorrt 5.0.2

推荐文章

热门文章

相关标签