【问题标题】:Is there any way to do this with list comprehension?有没有办法通过列表理解来做到这一点?
【发布时间】:2020-09-02 15:34:01
【问题描述】:

这是我写的代码:

x=['U','D','D','D','U','D','U','U']
y=[]
for i in x:
    if i=='U':
        y.append(1)
    else:
        y.append(-1)
print(y)

将 U 替换为 1,将 D 替换为 -1。 我们可以使用列表推导来做同样的事情吗?

【问题讨论】:

  • 是的,有可能。你尝试过什么吗?你遇到了什么问题?
  • 这里不适合做作业问题。提供有关您尝试过的方法以及失败的原因的信息。
  • 你应该添加你尝试过的代码并解释你有问题的地方
  • 我是 python 新手,我只是想知道如何使用列表推导替换该代码。

标签: python list


【解决方案1】:

是的,这很容易。您将列表推导式与三元表达式结合起来。

y = [1 if i=='U' else -1 for i in x]

【讨论】:

    猜你喜欢
    • 2011-06-09
    • 2021-07-09
    • 2011-05-05
    • 1970-01-01
    • 2011-10-04
    • 1970-01-01
    • 1970-01-01
    • 2015-06-15
    相关资源
    最近更新 更多