在Python中交换字符串中的每一个字符

2024-09-27 00:12:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下问题:我想用Python编写一个函数,给定一个字符串返回一个字符串,其中两个字符的每组都被交换。在

例如,给定“ABCDEF”,它返回“BADCFE”。在

字符串的长度将保证为偶数。在

你能帮我用Python怎么做吗?在


Tags: 函数字符串字符偶数abcdefbadcfe
3条回答
import re
print re.sub(r'(.)(.)', r'\2\1', "ABCDEF")
from itertools import chain, izip_longest

''.join(chain.from_iterable(izip_longest(s[1::2], s[::2], fillvalue = '')))

如果有非常大的字符串或只是想避免复制,也可以使用islices来代替常规切片。在

适用于奇数长度的字符串,即使这不是问题的要求。在

要添加另一个选项:

>>> s = 'abcdefghijkl'
>>> ''.join([c[1] + c[0] for c in zip(s[::2], s[1::2])])
'badcfehgjilk'

相关问题 更多 >

    热门问题