2024-09-27 00:12:54 发布
网友
我有以下问题:我想用Python编写一个函数,给定一个字符串返回一个字符串,其中两个字符的每组都被交换。在
例如,给定“ABCDEF”,它返回“BADCFE”。在
字符串的长度将保证为偶数。在
你能帮我用Python怎么做吗?在
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来代替常规切片。在
islice
适用于奇数长度的字符串,即使这不是问题的要求。在
要添加另一个选项:
>>> s = 'abcdefghijkl' >>> ''.join([c[1] + c[0] for c in zip(s[::2], s[1::2])]) 'badcfehgjilk'
如果有非常大的字符串或只是想避免复制,也可以使用
islice
s来代替常规切片。在适用于奇数长度的字符串,即使这不是问题的要求。在
要添加另一个选项:
相关问题 更多 >
编程相关推荐