【问题标题】:How to keep a list static in Python?如何在 Python 中保持列表静态?
【发布时间】:2011-08-02 13:53:03
【问题描述】:

好的,我有一长串数字,像这样:

q = [3495790.0, 2386479.0, 2398462.0]

等等等等大约300次。我想得到这个列表的另一个版本,所有数字都加了 1800,同时保留原始列表以供比较。感谢您的所有帮助!

【问题讨论】:

    标签: python list addition


    【解决方案1】:
    q1 = [x + 1800 for x in q]
    

    应该可以解决问题。

    【讨论】:

    • 感谢您的回答 - 我总是忘记列表推导。
    【解决方案2】:
    q2 = [x + 1800.0 for x in q]
    

    将创建一个新列表,每个条目添加 1800 个。

    【讨论】:

      【解决方案3】:

      在 Python 中,您可以将列表推导的结果分配给另一个列表:

      # Given:
      q = [3495790.0, 2386479.0, 2398462.0]
      
      # You could do...
      r = [x + 1800 for x in q]
      

      【讨论】:

        【解决方案4】:

        准确地说,这是最好的方法:

        q2 = [x + 1800.0 for x in q]
        

        但如果你觉得有创意,你也可以使用带有 map 的 lambda(创意,我的意思是烦人):

        q2 = map(lambda a: 1800.0 + a, q)
        

        当然,还有慢且非pythonic的

        q2 = []
        for i in q:
           q2.append(i)
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-11-24
          • 2012-11-22
          • 2013-05-31
          • 2021-03-16
          • 2017-06-30
          • 1970-01-01
          • 2016-09-16
          • 1970-01-01
          相关资源
          最近更新 更多