Python:如何将字符串分割、反转并重新连接?

42 投票
5 回答
143414 浏览
提问于 2025-04-16 03:37

你想知道怎么用Python把一个字符串拆开、反转,然后再合起来,而且不想要那些括号、逗号什么的,对吧?

5 个回答

2

你是说像这样吗?

import string
astr='a(b[c])d'

deleter=string.maketrans('()[]','    ')
print(astr.translate(deleter))
# a b c  d
print(astr.translate(deleter).split())
# ['a', 'b', 'c', 'd']
print(list(reversed(astr.translate(deleter).split())))
# ['d', 'c', 'b', 'a']
print(' '.join(reversed(astr.translate(deleter).split())))
# d c b a
4

这段话虽然不完全符合这个问题,但如果你想从后面分割字符串,可以这样做:

theStringInQuestion[::-1].split('/', 1)[1][::-1]

这段代码会从后面在'/'这个符号处分割一次。

78
>>> tmp = "a,b,cde"
>>> tmp2 = tmp.split(',')
>>> tmp2.reverse()
>>> "".join(tmp2)
'cdeba'

或者更简单:

>>> tmp = "a,b,cde"
>>> ''.join(tmp.split(',')[::-1])
'cdeba'

这里重要的部分是 split 函数join 函数。要反转列表,你可以使用 reverse(),这个方法会直接在原来的列表上进行反转,或者使用切片语法 [::-1],这个会返回一个新的、反转后的列表。

撰写回答