如何在Python中为循环函数的输出按字母顺序分配变量?
解决方法
你可以用列表来存储每次循环的转换结果,这样后续函数就能直接调用这个列表里的所有数据。修改后的代码如下:
# 把转换系数和单位提到循环外,避免重复定义 POUNDS_PER_GRAM = 0.00220462 UNIT = "pounds" repeat = int(input("How many Items:")) # 初始化空列表,用来存储所有转换后的重量 converted_weights = [] for i in range(repeat): weight = float(input("What is the weight? ")) converted_weight = weight * POUNDS_PER_GRAM formatted_weight = "{:.2f}".format(converted_weight) # 把转换结果添加到列表里,可选择存原始值或格式化后的字符串 converted_weights.append(converted_weight) # 如果需要存格式化后的结果,用下面这行替换上面的 # converted_weights.append(formatted_weight) print(converted_weight) print(UNIT) # 后续函数可以直接使用converted_weights这个列表 # 比如: # def process_weights(weights): # # 处理逻辑 # pass # process_weights(converted_weights)
关键说明
- 用列表
converted_weights收集每次循环的转换结果,列表能保存多个值,适配多物品的场景。 - 把
POUNDS_PER_GRAM和UNIT这类常量放到循环外,提升代码效率和可读性。 - 可根据后续函数需求,选择存储原始浮点数值(方便后续计算)或格式化后的字符串(直接用于展示),调整
append的内容即可。
内容的提问来源于stack exchange,提问作者Strock
相关产品推荐
相关产品推荐

