养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

Python如何截取字符串的字符

时间:2024-11-12 08:49:33

Python字符串的截取是很常见的操作,一般来说固定长度的字符串截取比较容易,只需计算好字符串长度就行.而不固定长度会比较麻烦一些,会用到find查找功能.我们来看下具体要如何截取吧.

Python如何截取字符串的字符

工具/原料

LenovoGOYA

windows10

Python3.8

方法/步骤

1、固定长度字符串的字符截取,示例1:”\\aaa\b\c”,要获取”aaa”这个值.只需取第2至第5位字符就行,输入代码:v_str=r"\\aaa\b\c"v_res=v_str[2:5]print('获取到的字符是:'+v_res)

Python如何截取字符串的字符

2、不固定长度的字符串截取,示例闸拊福律2:在名字不固定的路径”\\abcdefg\hi\j\k”里,截取主目录”锾攒揉敫abcdefg”的值(注:主目录可能是”abc”,也可能是”abcd”).在一个不固定的变量里找字符,通常的思路是找到固定的东西,示例2里固定字符为”\\...\”.我们先找出固定的字符,第一个固定的是主目录前面的”\\”,我们先把前面两个字符排除,录入代码:v_str=r"\\abcdefg\hi\j\k"v_res=v_str[2:]print('获取到的字符是:'+v_res)

Python如何截取字符串的字符

3、这个v_str变量里面固定的第二个字符是”\”,再试着用find把它找出来:v_str=r"\\abcdefg\hi\j\k"v_res=v_str[2:v_str.find("\\")]print('获取到的字符是:'+v_res)

Python如何截取字符串的字符

4、结果很明显失败了.这是因为find每次搜殇矬岭柳索都是从第一个字符开始的.如果前面两个字符不是”\\”,而是”//”,我们想要的结果已经出来了多唉捋胝:v_str=r"//abcdefg\hi\j\k"v_res=v_str[2:v_str.find("\\")]print('获取到的字符是:'+v_res)

Python如何截取字符串的字符

5、既然如此,我们借2个位搜索一下:v_str=r"\\abcdefg\hi\j\k"v_res=v_str[2:v_str[2:].find("\\")]print('获取到的字符是:'+v_res)

Python如何截取字符串的字符

6、结果已经很接近了,只是后面少了2个字符.再把借来的位还回去,得到最终的结果:v_str=r"\\abcdefg\hi\j\k"v_res=v_str[2:v_str[2:].find("\\")+2]print('获取到的字符是:'+v_res)

Python如何截取字符串的字符

7、好了,这种随机的不固定长度的亨蚂擤缚字符串截取方法已经知道了.再梳理一下思路:首先,我们知道固定长度的字符截取方法:v_霜杼厮贿str=r"\\abcdefg\hi\j\k"v_res=v_str[2:9]print('获取到的字符是:'+v_res)第一个数字2我已经知道,关键是第二个数字9怎么算出来?我们知道可通过find找到字符的索引值,在示例2里,固定的字符”\”有好多,排除掉前面两个后,得到第二个”\”的索引值:v_str=r"\\abcdefg\hi\j\k"print(v_str[2:].find("\\"))但是,这个数字7是在”abcdefg\hi\j\k”的索引值,完整的字符串应该是”\\abcdefg\hi\j\k”,所以我们还得+2.v_str=r"\\abcdefg\hi\j\k"print(v_str[2:].find("\\")+2)最后整合一下代码,结果就出来了:v_str=r"\\abcdefg\hi\j\k"v_res=v_str[2:v_str[2:].find("\\")+2]print('获取到的字符是:'+v_res)

Python如何截取字符串的字符

Python如何截取字符串的字符

Python如何截取字符串的字符

Python如何截取字符串的字符

© 一点知识