【问题标题】:python FOR loop 2 consecutive loops in one function only 1st loop runspython FOR循环一个函数中的2个连续循环只有第一个循环运行
【发布时间】:2020-12-27 14:31:21
【问题描述】:

我有两个可以单独运行的 FOR 循环。当我尝试在同一个函数中一起运行它们时,只运行第一个循环。

我的代码如下所示:

def loop_code():
        for x in range(10):
            x -= 1 
            print(x)
        for y in range(10):
            y += 1 
            print(y)

loop_code()

输出:

-1
0
1
2
3
4
5
6
7
8

我需要改为输出:

-1
0
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
9
10

感谢您的帮助!

【问题讨论】:

  • 您的代码似乎可以正常工作。检查this 可能有问题没有直接连接到您的代码。提供有关您的系统、IDE 和/或您如何运行代码的更多信息
  • 代码运行良好!有什么问题?
  • 查看 range() 函数的定义。像range(12) 这样简单的更改就可以了。 (想想看,你想要 12 个实例!)

标签: python python-3.x function loops for-loop


【解决方案1】:

查看 range() 函数的定义。像range(12) 这样简单的更改就可以了。 (想想看,你想要 12 次迭代!)

【讨论】:

    【解决方案2】:

    这不是一种优雅的做事方式。在 for 循环中修改索引变量会破坏所述 for 循环的兴趣。 如果您希望循环从 -1 变为 8,请使用:

    for index in range(-1,9)
    

    然后,如果您希望第二个 for 循环的索引从 1 变为 10,请使用:

    for other_index in range(1,11)
    

    您的问题需要澄清一下。我正在帮助你获得你想要的输出,但这里可能会有一些XY Problem。您想在 for 循环中修改索引是否有特殊原因?

    【讨论】:

    • 这是关于 python 函数中 FOR 循环的一般非特定问题。我有更复杂的代码,需要通过调用一个函数来执行两个明确的循环。您知道执行此操作的更好方法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-06
    • 2014-07-21
    • 1970-01-01
    • 2019-08-15
    • 2021-11-25
    • 2013-08-04
    • 1970-01-01
    相关资源
    最近更新 更多