我有一个'AAAH8192375948'形式的字符串。如何保留此字符串的前5个字符,并删除所有其余字符?它的形式是l.strip,带有负整数吗?谢谢。
答案 0 :(得分:29)
Python中的字符串是sequence type,就像列表或元组一样。只需抓住前5个字符:
some_var = 'AAAH8192375948'[:5]
print some_var # AAAH8
切片表示法是[start:end:increment]
- 如果要使用默认值(开始默认值为0,结束为len(my_sequence)并递增为1),则数字是可选的。所以:
sequence = [1,2,3,4,5,6,7,8,9,10] # range(1,11)
sequence[0:5:1] == sequence[0:5] == sequence[:5]
# [1, 2, 3, 4, 5]
sequence[1:len(sequence):1] == sequence[1:len(sequence)] == sequence[1:]
# [2, 3, 4, 5, 6, 7, 8, 9, 10]
sequence[0:len(sequence):2] == sequence[:len(sequence):2] == sequence[::2]
# [1, 3, 5, 7, 9]
strip
从字符串的开头和结尾删除一个字符或一组字符 - 输入一个负数只表示您试图从字符串中删除该负数的字符串表示。
答案 1 :(得分:6)
你听说过切片吗?
>>> # slice the first 5 characters
>>> first_five = string[:5]
>>>
>>> # strip the rest
>>> stripped = string[5:].strip()
>>>
>>> # in short:
>>> first_five_and_stripped = string[:5], string[5:].strip()
>>>
>>> first_five_and_stripped
('AAAH8', '192375948')
答案 2 :(得分:5)
我假设你不仅仅意味着“除了前5个字符之外的所有东西”,而是“保留前5个字符并在其余部分上运行strip()”。
>>> x = 'AAH8192375948'
>>> x[:5]
'AAH81'
>>> x[:5] + x[5:].strip()
'AAH8192375948'