python - 在 for 循环的每次迭代中使用不同的除数创建可整除数字的列表

标签 python list for-loop modulus

关于 stackOverflow 的第一个问题:)! 我想在 for 循环的每次迭代中将范围列表除以不同的分隔符: 为此,我考虑在每次迭代时更改 x 。我尝试了不同的方法,例如将 x 制作为列表,以及其他多种临时方法,但无济于事。我不知道为什么代码似乎可以正确迭代,但 x 的值不会随 x -= 1 改变。
最终目标是比较这些列表并找到相似的可整除数字。但一次只做一件事......

代码如下:

def divisible(x):
    lst1 = []
    while x >= 2:
        for each in range(0, 100001, 20):
            if each % x == 0:
                lst1.append(each)
        x -= 1
        return lst1



print(divisible(19))

它仅打印 x 的第一个值:

[0, 380, 760, 1140, 1520, 1900, 2280, 2660, 3040, 3420, 3800, 4180, 4560, 4940...etc]

最佳答案

问题在于您的 return 语句位于 while 循环内,这意味着您的函数在第一次迭代后返回;防止更多的迭代。进行这个小修改会产生以下代码:

def divisible(x):
    lst1 = []
    while x >= 2:
        for each in range(0, 100001, 20):
            if each % x == 0:
                lst1.append(each)
        x -= 1
    return lst1



print(divisible(19))

关于python - 在 for 循环的每次迭代中使用不同的除数创建可整除数字的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59316190/

相关文章:

python - 无法从延迟加载网站获取某些标签

c# - 如何在使用 get 属性公开 List 的同时保护 List 的 Add 方法?

C++ - 使用 std::list,如何打印对象私有(private)成员的链表?

c - for 循环不工作 - 外循环不迭代

c for 循环 i 和 j

javascript - for 循环中的 Visual Studio JavaScript 代码格式化

python - 如何在 ipython 中显示对象的对象

python - 如何在 Python 中的两个字符串之间拆分每个单独的值

python - 单选按钮django形式的初始值

python - 如何从列表中返回一组值的索引以获取该组中的特定值?