【问题标题】:How to multiply each elements in a list in Python [duplicate]如何在Python中将列表中的每个元素相乘[重复]
【发布时间】:2021-04-07 17:46:19
【问题描述】:

我想将列表中的每个元素乘以 2,但我得到的是 ['123123', '456456', '789789'] 而不是 [246, 912, 1578]。

这是我的代码

list = ['123', '456', '789']
my_new_list = []
for i in list:
    my_new_list.append(i*2)

print (my_new_list)

为了得到 [246, 912, 1578],我应该更改或添加什么代码?

【问题讨论】:

  • 把你的列表变成数字而不是字符串
  • list = list(map(int, list))list = [int(x) for x in list] 按照@rdas 所说的去做。

标签: python list multiplication


【解决方案1】:

您正在将字符串相乘。而是乘以整数。

list = ['123', '456', '789']
my_new_list = []
for i in list:
    my_new_list.append(int(i)*2)

print (my_new_list)

或者只是将列表中的每个数字都设为整数。 这也是您的代码的列表理解版本

list = ['123', '456', '789']
my_new_list = [int(i)*2 for i in list]

List Comprehension 你应该研究一下。 What does "list comprehension" mean? How does it work and how can I use it?

【讨论】:

    猜你喜欢
    • 2022-01-25
    • 1970-01-01
    • 1970-01-01
    • 2020-07-05
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 2022-06-10
    • 1970-01-01
    相关资源
    最近更新 更多