在 Python 中制作浓度列表时遇到问题

我是 python 的新手,对将数字列表转换为带单位的列表有疑问。


例如,我可以有一个浓度数组 C = [1, 2, 3, 4],但是我可以做些什么来制作一个新列表,以便每个值后面都有一个单位(例如 C_list = [1M, 2M, 3M , 4M])


我尝试编写以下代码,但它返回相同的数字(例如 C_list 是 [2M, 2M, 2M, 2M] 而不是 [1M, 2M, 3M, 4M]):


S0 = [0.3, 0.7, 1.0, 1.4, 1.8]#initial substrate concentration

S0_Legend = np.empty(len(S0),dtype='S10')    

for i in S0:

    a=str(i)+'M'

    for x in range(len(S0)):

          S0_Legend[x] = a

print(S0_Legend)

任何和所有帮助将不胜感激!


偶然的你
浏览 93回答 2
2回答

PIPIONE

使用list-comprehension:S0 = [0.3, 0.7, 1.0, 1.4, 1.8]print([str(x) + 'M' for x in S0])输出:['0.3M', '0.7M', '1.0M', '1.4M', '1.8M']

噜噜哒

最好保持简单,只需像在代码中一样添加单元str(i)+'M',然后将每个元素附加到新列表:S0 = [0.3, 0.7, 1.0, 1.4, 1.8]S0_Legend = []for i in S0:    S0_Legend.append(str(i)+'M') print(S0_Legend)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python