繁体   English   中英

Python 多级数乘法简化

[英]Python multiple series multiplication simplified

伙计们,我有以下简短版本的代码。

ab10=10
ab11=78
ab12=68

bc10=91
bc11=73
bc12=54

df10=87
df11=81
df12=90

b1=ab10/df10
b2=ab11/df11
b3=ab12/df12

c1=bc10/df10
c2=bc11/df11
c3=bc12/df12

m1=bc10/ab10
m2=bc11/ab11
m3=bc12/ab12

有没有更短的方法来进行这样的乘法,因为我有越来越多的这样的变量要按 10-12 年计算?

我试过for i in range (10,12)但没有工作。 在我的例子中,变量 ab10、ab11 等等我使用了其他变量。 手动完成所有事情需要大量时间,前提是有更多年,不限于 10、11、12 至少 10 年。 我很高兴听到任何简化流程的方法。

我会。 感谢任何想法或代码分享来指导我并使我的工作更有效率。

您可以使用字典来解决此类问题:

my_dict = {'ab10': 10, 'ab11':78, 'df10':87}

b1 = my_dict.ab10 / my_dict.df10 or my_dict['ab10] / my_dict['df10]

如果数字量非常大,您也可以考虑使用 numpy,数字将保存为可以执行操作的向量:

import numpy as np    
ab1 = np.array([10,78,68])
bc1 = np.array([91,73,54])
df1 = np.array([87,81,90])

b = ab1/df1
c = bc1/df1
m = bc1/ab1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM