Python 是否从字符串中删除前x个字符?

Python 是否从字符串中删除前x个字符?,python,string,Python,String,如何从字符串中删除前x个字符?例如,如果有一个字符串lipsum,它们如何删除前3个字符并得到sum >>> x = 'lipsum' >>> x.replace(x[:3], '') 'sum' 有关更多信息,请参阅上的官方文档,并回答注释的简明摘要。另一种方式(取决于您的实际需要): 如果要弹出前n个字符并保存弹出的字符和修改的字符串: s = 'lipsum' n = 3 a, s = s[:n], s[n:] print(a) # lip print

如何从字符串中删除前x个字符?例如,如果有一个字符串
lipsum
,它们如何删除前3个字符并得到
sum

>>> x = 'lipsum'
>>> x.replace(x[:3], '')
'sum'
有关更多信息,请参阅上的官方文档,并回答注释的简明摘要。

另一种方式(取决于您的实际需要): 如果要弹出前n个字符并保存弹出的字符和修改的字符串:

s = 'lipsum'
n = 3
a, s = s[:n], s[n:]
print(a)
# lip
print(s)
# sum

显示帐号最后3位数字的示例

x = '1234567890'   
x.replace(x[:7], '')

o/p: '890'
使用
del

例如:

>>> text = 'lipsum'
>>> l = list(text)
>>> del l[3:]
>>> ''.join(l)
'sum'

请注意,这在代码中较长,并且需要花费更多的时间,因为您必须在替换子字符串之前搜索它。另外:
>>x='liplip'
>>x.replace(x[:3],'')
'
。当然你可以通过第三个参数(count)=1来解决这个问题,但它仍然需要更长的时间。不,它与你的答案相关,所以它属于这里。您可以将count=1添加到您的中,以便在删除的字符数不等于要保留的字符数的情况下仍能更好地工作。e、 g.
“lipsumm”[3::][=“sum”
这与tkbxeg的答案有相同的问题
>>x='123456789001234567890'
>x.replace(x[:7],'xxxxxxx')
'xxxxxxx 890xxxxxxx890'
这甚至没有回答问题,你用
x
替换字符,而不是删除它们。我想这是隐喻性的“弹出”,但实际上只是两个不同的片段,没有真正的弹出这不像你想象的那样工作,因为chars参数不是前缀;相反,其值的所有组合都被剥离:这两种解决方案都不起作用,例如对于
'liplip'
。在第二个
TypeError:“str”对象不支持项目删除
@jamylak它能工作吗,现在,如果能,你需要向下投票吗?第一个解决方案对于
'liplip'
示例仍然不起作用,第二个解决方案已经过度复杂化了一切。很难改进简单的内置
文本[3:://code>hello U10 Forward,希望您不介意,但我删除了发布的第一个解决方案,因为它对于一般字符串确实不正确。如果包含重复的字符串,解决方案将删除前x个字符的所有实例,因此如果使用,可能会导致错误。
>>> text = 'lipsum'
>>> l = list(text)
>>> del l[3:]
>>> ''.join(l)
'sum'