2024-09-26 17:36:01 发布
网友
我想交换字符串中的每一对字符。'2143'变成'1234','badcfe'变成'abcdef'。
'2143'
'1234'
'badcfe'
'abcdef'
我怎么能用Python做这个?
在Python中交换两个项的常用方法是:
a, b = b, a
所以在我看来,你也会做同样的扩展切片。但是,这有点复杂,因为字符串是不可变的;所以必须先转换成列表,然后再转换回字符串。 因此,我将做以下工作:
>>> s = 'badcfe' >>> t = list(s) >>> t[::2], t[1::2] = t[1::2], t[::2] >>> ''.join(t) 'abcdef'
一行:
>>> s = 'badcfe' >>> ''.join([ s[x:x+2][::-1] for x in range(0, len(s), 2) ]) 'abcdef'
有一种方法。。。
>>> s = '2134' >>> def swap(c, i, j): ... c = list(c) ... c[i], c[j] = c[j], c[i] ... return ''.join(c) ... >>> swap(s, 0, 1) '1234' >>>
在Python中交换两个项的常用方法是:
所以在我看来,你也会做同样的扩展切片。但是,这有点复杂,因为字符串是不可变的;所以必须先转换成列表,然后再转换回字符串。
因此,我将做以下工作:
一行:
有一种方法。。。
相关问题 更多 >
编程相关推荐