gpt4 book ai didi

python - 使用枚举函数,有没有办法在不引用元素的情况下引用索引?

转载 作者:行者123 更新时间:2023-12-04 00:55:12 24 4
gpt4 key购买 nike

我需要编写一个函数来接收一个整数数组并返回一个数组,该数组由数组中除该索引处的数字之外的所有数字的乘积组成

例如,给定:

[3, 7, 3, 4]

函数应该返回:

[84, 36, 84, 63]

通过计算:

[7*3*4, 3*3*4, 3*7*4, 3*7*3]

如果数组不包含重复项,我编写的函数将起作用,但我似乎无法弄清楚如何引用跳过索引而不跳过数组中与索引具有相同值的任何数字。

def product_of_all_other_numbers(arr):
product_array = []
for idx, val in enumerate(arr):
running_count = 1
for n in arr:
if n != arr[idx]:
running_count *= n
product_array.append(running_count)
return product_array

枚举是否可行,还是我应该开始探索不同的路线?

最佳答案

I can't seem to figure out how to reference skipping the index withoutalso skipping any number in the array with the same value as theindex.

不需要比较该索引处的,您只关心索引。所以你的内部循环可能是这样的:

def product_of_all_other_numbers(arr):
product_array = []
for idx, val in enumerate(arr):
running_count = 1
for i, n in enumerate(arr):
if i != idx:
running_count *= n
product_array.append(running_count)
return product_array

请注意,这个问题有更有效的解决方案,但这解决了您当前的问题。

关于python - 使用枚举函数,有没有办法在不引用元素的情况下引用索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63046104/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com