【问题标题】:How to append two lists of numbers using a for loop?如何使用 for 循环附加两个数字列表?
【发布时间】:2021-07-02 02:08:04
【问题描述】:

我正在尝试获取列表 list_of_numbers 并确定哪些数字是偶数完全平方,哪些是奇数完全平方,但是当我运行它时我没有得到任何输出。预期输出将是两个列表 第一个列表:number_odd_squares [9, 25, 81, 121] 第二个列表:number_even_squares [2, 16, 36, 42, 64, 100]

list_of_numbers = [2, 9, 16, 25, 36, 42, 64, 81, 100, 121]

def find_perfect_squares(list_of_numbers):

number_even_squares =[]
number_odd_squares = []

for i in list_of_numbers:
    if (i%2) != 0 and root = math.sqrt(i):
        number_odd_squares.append(i)
    elif (i%2) == 0 and root = math.sqrt(i):
        number_even_squares.append(i)
        
print(number_even_squares)
print(number_odd_squares)

return 

find_perfect_squares(list_of_numbers)

【问题讨论】:

  • 预期输出是什么?请把它放在问题里好吗?
  • 编辑了我现在拥有的以及我的预期输出是什么

标签: loops append


【解决方案1】:

在您的for 循环中,您实际上并没有遍历您的数组,而是从0 迭代到数组的长度,即[0, 1, 2, ...] 而不是[2, 9, 16, ...],所以看看改变range(len(...)) 部分。

此外,您永远不会使用在循环中设置的 i 变量。它可能意味着进入if/else 块,您正在检查1 % 2(它永远不等于0)。

看看这 2 个错误,它应该可以帮助您的程序按预期运行。

【讨论】:

    猜你喜欢
    • 2019-04-05
    • 2020-03-26
    • 2020-04-25
    • 1970-01-01
    • 2020-05-16
    • 2020-09-20
    • 2015-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多