python字符串处理截取|逆序|指定字符截取

已邀请:

aa=1234

#逆序

aa[::-1]  结果4321


拆分

aa=1234

aa.split('2',1) 结果 ['1', '34']

取结果中第二个

aa.split('2',1)[1] 结果 34




1、截取指定位置字符串

Python字符串可以理解为一个数组,获取某一部分的可以使用 str[beginIndex:endPosition],其中str为需要截取的字符串,beginIndex为需要截取的第一个字符的下标,endPosition为截取字符最后一个的位置,注意是下标和位置(下面示例),下标+1=位置;beginIndex,endPosition都可以不写,不写的情况默认第一个或者最后一个;

正常示例:a = “Hello”

print “a[1:4] 输出结果:”, a[1:4] #结果 ell

print “a[:4] 输出结果:”, a[:4] #结果 Hell

print “a[1:] 输出结果:”, a[1:] #结果 ello

当然beginIndex,endPosition也可以为负数,表示截取方向从右到左,如a = “Hello”
print a[:-1] #截取从第一个字符开始到倒数第1个字符(不含最后一个) 结果Hell

print a[-3:-1] #截取倒数第三位字符与 倒数第一位之间的字符(注意不包含最后一个字符)结果ll

print a[-3:] #截取倒数第三位到结尾 结果llo

2、根据指定字符截取字符串先获取字符的下标位置;

再通过以上的方法截取;

Python提供index 函数,检测字符串中是否包含子字符串,通常表现为 某些特定字符,特定单词;a.index(b, begin, end),a为需要校验字符串,b为字符串,begin 为开始截取的字符的下标(默认为0),end结束字符下标(默认为字符长度)

示例:str1 = “Hello.python”;

str2 = “.”;

print str1.index(str2);#结果5

print str1.index(str2, 2);#结果5

print str1.index(str2, 10);#结果报错,没找到子字符串

综合以上所述,按照字符截图示例str1 = “Hello.python”;

str2 = “.”;

print str1.index(str2);#结果5

print str1[:str1.index(str2)] #获取 “.”之前的字符(不包含点) 结果 Hello

print str1[str1.index(str2):] ; #获取 “.”之前的字符(包含点) 结果.python

1.使用rfind函数

url = "http://www.6mm.cc/uploads/allimg/1306/2-13060F12S3.jpg"

print url[0:url.rfind('/', 1) + 1]

获取到的结果:http://www.6mm.cc/uploads/allimg/1306/

2.使用逆序的截取的方式

>>> url = "http://www.6mm.cc/uploads/allimg/1306/2-13060F12S3.jpg"

>>> tt = url[::-1].split('/', 1)[-1][::-1] + '/'

>>> tt

'http://www.6mm.cc/uploads/allimg/1306/'

要回复问题请先登录注册