【问题标题】:How can I make a list in Python like (0,6,12, .. 144)?如何在 Python 中创建一个类似 (0,6,12, .. 144) 的列表?
【发布时间】:2010-10-02 01:24:54
【问题描述】:

我不确定是否应该使用 for -loop。或许,像

for i in range(145): 
  by 6:    //mistake here?
  print i

【问题讨论】:

    标签: python list


    【解决方案1】:
    for i in range(0,150,6):
         print i
    

    如果你是按常数步进的

    【讨论】:

    • 在我看来,这比 Ramponi 的回答更好读。过早的优化是万恶之源。
    • 哦,该死的。你知道,西部最快的枪 :) +1
    【解决方案2】:

    我更喜欢:

    for i in xrange(25):    # from 0 to 24
        print 6*i
    

    您可以使用名为 list comprehension 的类似结构轻松构建包含相同数字的列表:

    numbers = [6*i for i in xrange(25)]
    print numbers
    

    如果您已经有一个(未知)数字列表,例如someNumbers,但您只想打印那些是 6 的倍数:

    for i in someNumbers:
        if i%6 == 0:
            print i
    

    【讨论】:

    • 到目前为止,我从来没有使用过 xrange,现在才查了一下。 +1 启蒙
    【解决方案3】:

    reqlist = [i for i in range(0,150,6)]

    【讨论】:

    • 我不知道为什么这被否决了。嗯,答案有点短,但它有一个很好的列表理解,它解决了问题
    【解决方案4】:
    i = 1
    
    while i * 6 < 144:
        i = i + 1
        print i * 6
    

    有很多方法可以做到这一点

    【讨论】:

      猜你喜欢
      • 2020-09-05
      • 2010-10-01
      • 1970-01-01
      • 2017-06-17
      • 2021-02-05
      • 2021-05-13
      • 1970-01-01
      • 2020-03-28
      • 2011-05-31
      相关资源
      最近更新 更多