我很难尝试将此 Javascript 代码移植到 Python。在 Javascript 中,该函数可以采用两个字符串,例如 str1=123456 和 str2=passwo。然后它会输出类似 p1a2s3s4w5o6 的东西

在 python 中,它只是将它结合起来。如果可能的话,请有人告诉我如何使用 python 中的 if 语句来完成。也许我需要以另一种方式来做。谢谢你的帮助。

Python 示例

def merge(str1, str2):
    arr1 = str1.split();
    arr2 = str2.split();
    result = "";
    index1 = 0;
    index2 = 0;
    while ((index1 < len(arr1)) or (index2 < len(arr2))):
        if(index1 < len(arr1)):
            result += arr1[index1];
            print("part1")
            index1 = index1+1;
        if(index2 < len(arr2)):
            result += arr2[index2];
            index2 = index2+1;
    print(result);
    return result;

Javascript 示例
function merge(str1, str2){
    var arr1 = str1.split("");
    var arr2 = str2.split("");
    var result = "";
    var index1 = 0;
    var index2 = 0;
    while((index1 < arr1.length) || (index2 < arr2.length)){
        if(index1 < arr1.length){
            result += arr1[index1];
            index1++;
        }
        if(index2 < arr2.length){
            result += arr2[index2];
            index2++;
        }
    }
    return result;
}

最佳答案

Python 3 提供使用 list() 将字符串直接类型转换为列表
并删除分号。


    arr1 = list(str1)
    arr2 = list(str2)

代替
    arr1 = str1.split();
    arr2 = str2.split();

整个代码:
def merge(str1, str2):
    arr1 = list(str1)
    arr2 = list(str2)
    result = ""
    index1 = 0
    index2 = 0
    while ((index1 < len(arr1)) or (index2 < len(arr2))):
        if(index1 < len(arr1)):
            result += arr1[index1]
            print("part1")
            index1 = index1+1
        if(index2 < len(arr2)):
            result += arr2[index2]
            index2 = index2+1
    print(result)
    return result

关于While 循环中的 Javascript If 与 Python if 语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61243202/

10-12 00:07
查看更多