首页 > 解决方案 > 如何将字符串的每个其他字母向左移动一个?

问题描述

这是一个例子:

x = "Hello"

我想y平等Hleol。到目前为止,我试过这个:

x = "Hello"
y = x[::-1]

但这只会y倒退。我怎么能这样做?

它可能有一个糟糕的标题,我对此感到非常抱歉。

标签: pythonpython-3.x

解决方案


您将字符串转换为列表。字符串是不可变的,但列表适用于索引操作。

然后忽略索引 0 并将索引 1 和 2、3 和 4 等的内容切换到字符串 -1 的最大长度,这样最后就不会出现索引错误:

def wiggle_it(s):
    s = list(s)
    for i in range(1,len(s)-1,2):
        s[i],s[i+1] = s[i+1],s[i]

    return ''.join(s) # return list back joined as string

print(wiggle_it("Hello"))

输出:

Hleol

推荐阅读