Python:从字符串中删除一个字符

时间:2010-12-01 13:14:48

标签: python string

我想删除字符串中的字符编号5。所以我做了:

del line [5]

得到了: TypeError:'str'对象不支持项删除

所以我不知道是否有一个不同的有效解决方案。

3 个答案:

答案 0 :(得分:7)

字符串在Python中是不可变的,因此您无法就地更改它们。

但是,当然您可以将字符串切片的组合分配回相同的标识符:

mystr = mystr[:5] + mystr[6:]

答案 1 :(得分:1)

我使用类似于:

的功能
def delstring(mystring, indexes):
  return ''.join([let for ind, let in enumerate(mystring) if ind not in indexes])

索引应该是可迭代的(list,tuple ..)

答案 2 :(得分:1)

bytearray是一种可以在适当位置更改的类型。如果您使用的是Python2.x,它可以很容易地转换为默认的str类型:bytes。

b=bytearray(s)
del b[5]
s=str(b)
相关问题