Nim*_*ran -1 python list divide
我对 python 语言相当陌生。我有两个这样的列表: 并且我还没有安装 numpy 包。
First_List = [10, 2, 5, 4, 100]
Second_List = [5, 10, 20, 20, 25]
Run Code Online (Sandbox Code Playgroud)
如何将每个元素除以 中的First_List元素Second_List?输出应该是:
Result = [2, 0.2, 0.2, 4]
Run Code Online (Sandbox Code Playgroud)
我想要输出中的列表,而不是数组!我怎样才能做到这一点 ?我尝试使用这个:
>>> First_List = [10, 2, 5, 4, 100]
>>> Second_List = [5, 10, 20, 20, 25]
>>> First_List/Second_List
Run Code Online (Sandbox Code Playgroud)
但我收到了这个错误:
回溯(最近一次调用最后一次):文件“”,第 1 行,在 First_List/Second_List 类型错误:/ 不支持的操作数类型:“列表”和“列表”
假设First_List和Second_List具有相同数量的元素,您可以迭代任何列表的索引范围,并将一个列表的元素与另一个列表的相应元素分开:
First_List = [10, 2, 5, 4, 100]
Second_List = [5, 10, 20, 20, 25]
result = []
# get last index for the lists for iteration
end_index = len(First_List)
for i in range(end_index):
result.append(First_List[i]/Second_List[i])
result
Run Code Online (Sandbox Code Playgroud)
输出:
[2.0, 0.2, 0.25, 0.2, 4.0]
Run Code Online (Sandbox Code Playgroud)
这一切都可以使用列表理解来完成
result = [First_List[i]/ Second_List[i] for i in range(len(First_List))]
Run Code Online (Sandbox Code Playgroud)
或者,可以使用 zip 和列表理解来完成(更好)。详细信息您可以在这里查看:
result = [a/b for a,b in zip(First_List,Second_List)]
Run Code Online (Sandbox Code Playgroud)