【问题标题】:Python: C style inner loop in pythonPython:python中的C风格内循环
【发布时间】:2018-07-09 07:57:48
【问题描述】:

我正在从事一个 nlp 项目,我处于集群级别,我希望将文档相互配对。我想用python翻译以下逻辑。但由于一些奇怪的原因,我无法理解这个。

var number = [0,1,2,3,4]
for(var i=0; i<number.length; i++){
    for(var j=i; j<number.length; j++){
        console.log(i + "vs"+ j)
    }
}

输出: 0vs0 0vs1 0vs2 0vs3 0vs4 1vs1 1vs2 1vs3 1vs4 2vs2 2vs3 2vs4 3vs3 3vs4 4vs4

请问上述代码的 python 等价物是什么。

【问题讨论】:

  • 提示:for i in range(...)...
  • 是的,我试过了,但是内循环使用了外循环的变量。至少在否决投票之前尝试实施它。 for j in range(i) 不会产生任何结果,因为 i 在初始循环中将为 0。
  • 再次查看range 的文档以复制从 i 到 number.length 逻辑...

标签: javascript python loops


【解决方案1】:
numbers = [0,1,2,3,4]
for i in range(len(numbers)):
    for j in range(i, len(numbers)):
        print("{} vs {}".format(i, j))

【讨论】:

    【解决方案2】:

    试试这个:

    number = [0,1,2,3,4]
    for i in range(len(number)):
        for j in range(i, len(number)):
            print(i , "vs" , j)
    

    【讨论】:

    • 不能正确复制var j=i; j&lt;number.length; j++
    • i 仍然不正确; i0 到 number.length,而不是 number 的成员。
    • 仍然没有复制原始代码 - i 的值不是取自 number
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-10
    • 1970-01-01
    • 1970-01-01
    • 2020-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多