【问题标题】:How to create a list without using range in Python (For Loops)?如何在不使用 Python(For 循环)中的范围的情况下创建列表?
【发布时间】:2018-03-18 10:53:55
【问题描述】:

假设我有

myString = "ORANGE"

如何编写一个 for-each 循环来列出每个字符,使其看起来像这样

1O
2R
3A
4N
5G
6E

我很困惑,因为我不知道如何在不使用范围的情况下做到这一点。

【问题讨论】:

  • “但作为一个列表,所有内容都垂直向下而不是交叉。” => ???对不起,我不明白你的意思...

标签: python list for-loop foreach range


【解决方案1】:

试试这个

myString = "ORANGE"
for id, val in enumerate(myString, 1):
    print("".join(str(id) + val))

【讨论】:

    【解决方案2】:

    简单的方法:

    myString = "ORANGE"
    for i in range(0,len(myString)):
        print (str(i+1)+""+myString[i])
    

    不使用range

    myString = "ORANGE"
    j=1
    for i in myString:
        print (str(j)+""+i)
        j+=1
    

    【讨论】:

      【解决方案3】:

      这是非常基本的。 5个答案,但实际上没有一个人这么说我很惊讶。没关系,这应该满足您的要求:

      myString = "ORANGE"
      a = 1
      
      for i in myString:
      
          print(str(a) + i)
          a = a + 1
      

      【讨论】:

        【解决方案4】:
        for index, character in enumerate('ORANGE'):
            print('{}{}'.format(index + 1, character))
        

        enumerate 上的 Python 文档

        【讨论】:

          【解决方案5】:
          myString = "ORANGE"
          l = [str(i)+j for i,j in enumerate(myString,1)]
          ' '.join(l)
          

          输出:

          '1O 2R 3A 4N 5G 6E'
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-06-04
            • 2023-02-26
            • 2015-10-28
            • 2015-04-24
            • 1970-01-01
            • 1970-01-01
            • 2022-01-09
            • 1970-01-01
            相关资源
            最近更新 更多