在Python中如何将整数除以列表?

在Python中如何将整数除以列表?,python,list,division,Python,List,Division,我需要计算‘a’,使a=总和1/I;其中i的范围为1到n-1。在这个过程中,我需要将一个整数(MyInt)除以一个列表 sample = [['AAAA','BBBB','CCCC'],['BBBBB','FFFFF','GGGGG'],['AA','MM']] 但是,我得到的输出是[[1.0]],而我应该得到一个列表中带有[1.83333,2.08333,1]个数字的输出 知道我哪里出错了吗?假设你说的是(整数除法)。我更喜欢使用Numpy。以下可能是您正在寻找的内容: i2 =[] afi

我需要计算‘a’,使a=总和1/I;其中i的范围为1到n-1。在这个过程中,我需要将一个整数(MyInt)除以一个列表

sample = [['AAAA','BBBB','CCCC'],['BBBBB','FFFFF','GGGGG'],['AA','MM']]
但是,我得到的输出是[[1.0]],而我应该得到一个列表中带有[1.83333,2.08333,1]个数字的输出


知道我哪里出错了吗?

假设你说的是(整数除法)。我更喜欢使用Numpy。以下可能是您正在寻找的内容:

i2 =[]
afinal =[]
for sub_list in sample:
    i1 = range(len(sample[0]))
    i1.pop(0)
    myInt = [1 for x in i1]
    newList = [float(int1)/float(x) for int1,x in zip(myInt,i1)]
    a = [sum(i) for i in zip(newList)]
afinal.append(a)
print afinal

假设你说的是(整数除法)。我更喜欢使用Numpy。以下可能是您正在寻找的内容:

i2 =[]
afinal =[]
for sub_list in sample:
    i1 = range(len(sample[0]))
    i1.pop(0)
    myInt = [1 for x in i1]
    newList = [float(int1)/float(x) for int1,x in zip(myInt,i1)]
    a = [sum(i) for i in zip(newList)]
afinal.append(a)
print afinal

如果我理解得很好,您希望将
a
除以列表中的每个元素。 您需要的是
减少

import numpy as np

a = np.array([1,2,3,4,5])     # a List
b = 3                         # INT Value
print b/a
将返回
l
的第一个元素,即
1
,除以
l
的所有其他元素

说明

reduce
将第一个参数应用于第二个参数的前两个元素,并使用新列表重复该参数,该列表的第一个元素是调用的结果,其他元素是传递列表的元素,从第三个开始,直到第二个参数只有一个元素

举例说明:

l = [1, 2, 3, 4]
reduce((lambda x, y : x/y), l)

lambda x,y:x/y
的意思是“你知道,这个函数接受两个参数并返回它们的商”。这是一个匿名函数。

如果我理解得很好,您希望将
a
除以列表中的每个元素。 您需要的是
减少

import numpy as np

a = np.array([1,2,3,4,5])     # a List
b = 3                         # INT Value
print b/a
将返回
l
的第一个元素,即
1
,除以
l
的所有其他元素

说明

reduce
将第一个参数应用于第二个参数的前两个元素,并使用新列表重复该参数,该列表的第一个元素是调用的结果,其他元素是传递列表的元素,从第三个开始,直到第二个参数只有一个元素

举例说明:

l = [1, 2, 3, 4]
reduce((lambda x, y : x/y), l)
lambda x,y:x/y
的意思是“你知道,这个函数接受两个参数并返回它们的商”。这是一个匿名函数

我需要计算‘a’,使a=总和1/I;其中i的范围为1到n-1

这就是你想做的吗

我需要计算‘a’,使a=总和1/I;其中i的范围为1到n-1


这就是你想做的吗?

你说的“用列表除以整数”是什么意思?我是用一个数字列表除以一个整数(这里是1)。所以我需要返回一个列表,其中1除以列表中的每个元素除以一个整数就没有意义了。实际上,您似乎想做的是将一个整数除以列表中的每个项目,然后将结果放入一个新列表中。另外,您的newList=[myInt/x for x in i2]正在i2上迭代,这是在您的第一行上定义的空列表[],因此newList当然是空的。谢谢您的评论。我已经对程序进行了更改。但当我这样做的时候,它似乎仍然有问题。有什么想法吗?你说的“用一个列表除以一个整数”是什么意思?我用一个数字列表除以一个整数(这里是1)。所以我需要返回一个列表,其中1除以列表中的每个元素除以一个整数就没有意义了。实际上,您似乎想做的是将一个整数除以列表中的每个项目,然后将结果放入一个新列表中。另外,您的newList=[myInt/x for x in i2]正在i2上迭代,这是在您的第一行上定义的空列表[],因此newList当然是空的。谢谢您的评论。我已经对程序进行了更改。但当我这样做的时候,它似乎仍然有问题。有什么想法吗?是的!这很有帮助。让我检查一下它是否在循环中工作,为什么在这里不工作。我觉得我遗漏了一些明显的东西。如果涉及两个整数,那么Python 2除法默认为整数除法。如果需要浮点除法,请确保其中一个是浮点除法,或者使用来自未来的导入除法的
。是!这很有帮助。让我检查一下它是否在循环中工作,为什么在这里不工作。我觉得我遗漏了一些明显的东西。如果涉及两个整数,那么Python 2除法默认为整数除法。如果需要浮点除法,请确保其中一个是浮点除法,或者使用来自未来的导入除法的