‘壹’ python 中关于字符串切片的一个问题
aa[0:6]
表示取
第0,1,2,3,4,5
位的数据
所以是6个
123456
aa[:-1]
表示取开始到倒数第二位的数据
所以也是123456
就像
for
i
in
range(7):
print
i
0,1,2,3,4,5,6
最后一位
都不包括
‘贰’ python的字符串截取问题
python的切片操作 [start : end : step ]
step为负的话,倒序,step的绝对值为步进数
以下个人理解,如有误导,请查看官网,以免误人子弟:
图2,第三个参数为负数,因此从后往前数,结果与下图一致:
words="bahsgnepus"
printwords[:-5:3]
words[:-5] -->bahsg
步进为3,故为'b'和's'
如果步进为2的话,则为'b','h','g'
‘叁’ python split()默认以空格分割,现在字符串里有#和空格,怎样是split只以#分割,不以空格分割。
split()的用法是这样的,你只要在括号里面打上你需要以什么分割就可以了,比如你要以#分割,那就split("#")。例如a = "a#a#a", b = a.split("#") >>> print b 就输出[a,a,a]
‘肆’ python,字符串切片问题
aa[0:6] 表示取 第0,1,2,3,4,5 位的数据 所以是6个 123456
aa[:-1] 表示取开始到倒数第二位的数据 所以也是123456
就像 for i in range(7):
print i
0,1,2,3,4,5,6
最后一位 都不包括
‘伍’ python字符串处理方法中str.split(sep=None)中的None是什么意思
可选参数,默认值是None,python中none一般表示空
‘陆’ Python中列表/字符串切片slice
s='0123456789'
s[::-1]:表示将s倒序排列
s[::-2]:表示将s倒序排列并且步长是2
s[::-3]:表示将s倒序排列并且步长是3
s[:2:-1]:表示将s倒序排列,并且到s的第2个元素就结束
s[1:2:-1]:表示将s倒序排列,并且从第一个元素开始,第二个元素结束
s[-1:-5:-2]:表示将s倒序排列步长为2,也就是'97531'。然后是从s的-1个元素位置开始,也就是9。到s的-5个元素结束,也就是5,但不包括5。最后的结果也就是'97'
‘柒’ 常见的几种python字符串方法总结
split([sep]) 将字符串分割为列表,默认用空白符分割,给出字符串参数,用参数字符串分割
'a b c'.split() 返回 ['a','b','c']
join 将可迭代对象中的字符串连接在一起
'\n'.join(['a','b','c'] )返回字符串 "a\nb\nc"
str.find(substr,[start,[end]]) 从str的下标 start至end之间查找substr,返回substr出现位置的下标,未找到返回-1
str.index 与find相仿,但未找到抛出异常
其余还要通用的下标 ,切片操作等
‘捌’ python中的字符串切片是什么意思呢,下面语句str1[2:4]是什么意思
str1[2:4] 意思就是取出str1里 序号在 [2,4)范围内的元素
以数组为例
>>>exp=[1,2,3,4,5]
>>>printexp[2:4]
[3,4]
>>>printexp[:4]
[1,2,3,4]
>>>printexp[1:]
[2,3,4,5]
>>>printexp[:]
[1,2,3,4,5]
‘玖’ 请教一个Python字符串切片问题
一:取字符串中第几个字符
print "Hello"[0] 表示输出字符串中第一个字符
print "Hello"[-1] 表示输出字符串中最后一个字符
二:字符串分割
print "Hello"[1:3]
#第一个参数表示原来字符串中的下表
#第二个阐述表示分割后剩下的字符串的第一个字符 在 原来字符串中的下标
这句话说得有点啰嗦,直接看输出结果:
el
三:几种特殊情况
(1)print "Hello"[:3] 从第一个字符开始截取
(2)print "Hello"[0:] 从第一个字符开始截取,一直截取到最后
(3) print "Hello"[:] 道理同(2)
看输出结果:
Hel
Hello
Hello
四:步长截取
print "Hello"[::2]
print "Hello"[::-2]
表示从第一个字符开始截取,间隔2个字符取一个。
输出结果:
Hlo
olH
Python 对字符串切片
对字符串切片
字符串 'xxx'和 Unicode字符串 u'xxx'也可以看成是一种list,每个元素就是一个字符。因此,字符串也可以用切片操作,只是操作结果仍是字符串:
>>> 'ABCDEFG'[:3]
'ABC'
>>> 'ABCDEFG'[-3:]
'EFG'
>>> 'ABCDEFG'[::2]
'ACEG'
在很多编程语言中,针对字符串提供了很多各种截取函数,其实目的就是对字符串切片。Python没有针对字符串的截取函数,只需要切片一个操作就可以完成,非常简单。
‘拾’ python切片问题
题主你好,
字符串切片, 通常情况下有这么几种情况:
a. 第1种情况, 起始索引和结束索引都未省略时, 得到的结果用我的话说是: 包前不包后, 这一点通过题主的问题可以得知,是知道这一点的.
举例: a = '01234' a[2:4]的值为'23';
b.第2种情况,起始索引省略, 结束索引未省略, 此时起始索引默认值为0.
举例来说: a = '012345' a[:2]等价于a[0:2],按照包前不包后的原则, 最后的结果: '01'
c.第3种情况,起始索引未省略, 结束索引省略, 此时结束索引默认值为被分片字符串的长度.
举例来说: a = '01234' a[2:]等价于a[2:len(a)]也就是a[2:5], 还是按照包前不包后的原则,最后的结果: '234'
d.第4种情况, 起始索引和结束索引都省略, 则根据b和c所说的, 起始索引默认为0,结束索引默认为字符串的长度len(字符串).
举例来说: a = '01234' a[:]等价于a[0:len(a)],也就是a[0:5], 还是按照包前不包后的原则, 最后得到结果: '01234'
--------
上面b,c情况的依据:
上面所说为分片索引也可以是负数, 负数是从右向左数, 与正数分片索引不同的是, 负数的分片索引起始值为-1, 正数的分片索引起始值为0.
举例来说中: a = '01234', a[0:-1], 因为-1是字符串最后一个字符的索引, 再根据上面所说的包前不包后原则, 结果就是去掉最后一个字符,剩下的内容: '0123'
希望可以帮到题主, 欢迎追问.