2024-09-27 00:11:30 发布
网友
我想交换字符串中的每一对字符'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 = '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' >>>
oneliner:
>>> s = 'badcfe' >>> ''.join([ s[x:x+2][::-1] for x in range(0, len(s), 2) ]) 'abcdef'
在Python中交换两项的常用方法是:
所以在我看来,你也会对一个扩展的切片做同样的事情。然而,它有点复杂,因为字符串是不可变的;因此,您必须先转换为列表,然后再转换为字符串。
因此,我将做以下工作:
这里有一个方法
oneliner:
相关问题 更多 >
编程相关推荐