如何根据numpy数组的最大值批量生成多个不同命名的数组副本?
方案1:使用字典存储副本(更推荐,易维护)
直接把所有副本存在字典里,后续批量操作、单份取用都更方便,不会污染全局命名空间:
import numpy as np # 获取数组最大值作为复制总份数 copy_count = oned_2018.max() class_20_collection = {} for idx in range(1, copy_count + 1): class_20_collection[idx] = oned_2018.copy() # 后续使用时,class_20_collection[1] 等价于你需要的 class1_20,以此类推
方案2:动态生成指定格式的全局变量(完全匹配你要的命名格式)
如果必须生成class1_20、class2_20这类独立变量,可以通过修改全局命名空间实现:
copy_count = oned_2018.max() for idx in range(1, copy_count + 1): globals()[f"class{idx}_20"] = oned_2018.copy()
注意:该方式会生成大量零散变量,后续批量处理时需要额外匹配变量名,维护成本更高,非必要不推荐使用。
内容的提问来源于stack exchange,提问作者Claire Wang
相关产品推荐
相关产品推荐

