在Python中如何将整数除以列表?
我需要计算‘a’,使a=总和1/I;其中i的范围为1到n-1。在这个过程中,我需要将一个整数(MyInt)除以一个列表在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
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除法默认为整数除法。如果需要浮点除法,请确保其中一个是浮点除法,或者使用来自未来的导入除法的。