要在字符串实例:P></
s ="this is a string, a"
我在','(3款)将永远是to the last the character,又名s[-3]。P></
我的思考方式to remove the,but can only)of the字符串转换进入名单,deleting EN,EN和转换回字符串。不管一个人多在这似乎是太多为简单的任务。P></
我怎么能在简单的内部通道中的accomplish this?P></
我把它串起来。替换是不可能的?是否需要保留字符串中的其他逗号?
我愿意。我去查一下绳子。换一个。
如果需要删除多次出现的子字符串,replace将非常有用,在这种情况下,它也会变慢。
是的,如果我可以从相反的方向开始,字符串替换将是理想的。我可以做x=string.replace(s[:-1],',','',1),但这看起来不漂亮,每当我需要使用x时,我必须使用x[:-1]作为x[:-1]使其原始形式为=[。谢谢。
通常,您只需执行以下操作:
s = s[:-3] + s[-2:]
s[:-3]给了你一个字符串,但不包括你想要删除的逗号("this is a string"和s[-2:]给了你另一个字符串,从逗号(" a"之后的一个字符开始)。
然后,把这两个字符串连接在一起就可以得到你想要的("this is a string a")。
谢谢你=。如果有人想启蒙的话,还可以接受其他的建议。
Thanx Pax,编辑问题后是否获得共享:)
不,我只是为了分享周围的爱。但说真的,不,所以不能那样做。当我找到一个和我要说的大致相同的答案时,我会投反对票,有时会扩大。所有的代表都给你。不管怎样,我不需要它,我已经意识到我永远不会抓住乔恩·斯基特,即使是贾雷德帕也在逃避,因为我必须花更多的时间做真正的工作。
使用"删除最后一个逗号"而不是"删除第三个最后一个字符"的几个变体是:
s[::-1].replace(",","",1)[::-1]
或
''.join(s.rsplit(",", 1))
但这些很难看。稍微好一点的是:
a, _, b = s.rpartition(",")
s = a + b
如果您不知道逗号的位置(字符串中的最后一个逗号除外),并且实际上需要"从右替换",那么这可能是最好的方法。然而,阿努拉格的回答更像是"删除第三个最后一个字符"的Python。
python字符串是不可变的。这意味着您必须创建至少1个新字符串才能删除逗号,而不是在C语言中就地编辑字符串。
如果要删除文本中的每个","字符,可以尝试
s = s.split(',')
>> ["this is a string"," a"]
s ="".join(s)
>>"this is a string a"
或在一行中:
s0 ="".join(s.split(','))
要将任意长度的字符串切片为任意长度的多个等长切片,可以执行以下操作
def slicer(string, slice_length):
return [string[i:i + slice_length]
for i in xrange(0, len(string), slice_length)]
如果slice_length没有精确地划分为len(string),那么在列表的末尾将有一个单独的slice来保存剩余部分。
最好的简单方法是:您可以使用replace函数作为:
>>> s = 'this is a string, a'
>>> s = s.replace(',','')
>>> s
'this is a string a'
在此,replace()函数搜索字符','并将其替换为',即空字符
注意,replace()函数默认为all",",但如果您只想替换某些",",在某些情况下,您可以使用:s.replace(",","",1)