【问题标题】:print la limited number of list on each line (python)在每行上打印有限数量的列表(python)
【发布时间】:2020-11-08 08:19:14
【问题描述】:

打印列表中的元素,每行 10 位 从此

n = [85, 13, 99, 34, 71, 15, 82, 24, 64, 61,
     67, 99, 50, 68, 25, 37, 32, 27, 14, 91,
     79, 15, 47, 48, 74, 88, 64, 53, 77, 50,
     24, 91, 87, 55, 60, 75, 91, 22, 47, 63,
     81, 88, 26, 48, 69, 59, 84, 77, 28, 36,
     59, 74, 89, 73, 91, 64, 55, 88, 90, 48,
     73, 97, 98, 40, 93, 50, 78, 60, 44, 77,
     82, 51, 53, 65, 98, 59, 94, 91, 52, 44,
     65, 85, 72, 92, 49, 67, 58, 48, 62, 54,
     89, 67, 58, 48, 85, 45, 77, 76, 81, 77]

到这里(不带括号)

value n :
85, 13, 99, 34, 71, 15, 82, 24, 64, 61, 
67, 99, 50, 68, 25, 37, 32, 27, 14, 91, 
79, 15, 47, 48, 74, 88, 64, 53, 77, 50, 
24, 91, 87, 55, 60, 75, 91, 22, 47, 63, 
81, 88, 26, 48, 69, 59, 84, 77, 28, 36, 
59, 74, 89, 73, 91, 64, 55, 88, 90, 48, 
73, 97, 98, 40, 93, 50, 78, 60, 44, 77, 
82, 51, 53, 65, 98, 59, 94, 91, 52, 44, 
65, 85, 72, 92, 49, 67, 58, 48, 62, 54, 
89, 67, 58, 48, 85, 45, 77, 76, 81, 77

【问题讨论】:

    标签: python list printing formatting


    【解决方案1】:

    你可以试试这个:

    n = [85, 13, 99, 34, 71, 15, 82, 24, 64, 61,
         67, 99, 50, 68, 25, 37, 32, 27, 14, 91,
         79, 15, 47, 48, 74, 88, 64, 53, 77, 50,
         24, 91, 87, 55, 60, 75, 91, 22, 47, 63,
         81, 88, 26, 48, 69, 59, 84, 77, 28, 36,
         59, 74, 89, 73, 91, 64, 55, 88, 90, 48,
         73, 97, 98, 40, 93, 50, 78, 60, 44, 77,
         82, 51, 53, 65, 98, 59, 94, 91, 52, 44,
         65, 85, 72, 92, 49, 67, 58, 48, 62, 54,
         89, 67, 58, 48, 85, 45, 77, 76, 81, 77]
    
    print("value n :")
    
    for x in range(10):
        print(', '.join([str(num) for num in (n[x*10:x*10+10])]))
    

    输出:

    value n : 
    85, 13, 99, 34, 71, 15, 82, 24, 64, 61
    67, 99, 50, 68, 25, 37, 32, 27, 14, 91
    79, 15, 47, 48, 74, 88, 64, 53, 77, 50
    24, 91, 87, 55, 60, 75, 91, 22, 47, 63
    81, 88, 26, 48, 69, 59, 84, 77, 28, 36
    59, 74, 89, 73, 91, 64, 55, 88, 90, 48
    73, 97, 98, 40, 93, 50, 78, 60, 44, 77
    82, 51, 53, 65, 98, 59, 94, 91, 52, 44
    65, 85, 72, 92, 49, 67, 58, 48, 62, 54
    89, 67, 58, 48, 85, 45, 77, 76, 81, 77
    

    【讨论】:

      【解决方案2】:
      y = [", ".join([str(x) for x in n[10*(i-1):10*i]]) for i in range(1, 11)]
      print("\n".join(y))
      

      我首先将原始列表拆分为 10 个子列表,将每个子列表变成一个字符串,然后将这些字符串连接起来。

      【讨论】:

        【解决方案3】:

        您可以使用separator in print 获得所需的输出

        print('value n :')
        for i in range(0, len(n), 10):
            print(*n[i:i+10], sep = ', ')
        

        说明

        1. range(0, len(n), 10) 在每一行创建起始索引
        2. n[i:i+1] 是每行包含 10 个值的数组
        3. *n[i:i+1] 是将列表 n[i:i+1 转换为 print 的位置参数的解包运算符(即等效于 print(n[i], n[i+1], . ..n[i+10])
        4. sep = ', ' 使每个位置参数都用逗号分隔符打印

        【讨论】:

          【解决方案4】:

          输入:

          n = [85, 13, 99, 34, 71, 15, 82, 24, 64, 61,
               67, 99, 50, 68, 25, 37, 32, 27, 14, 91,
               79, 15, 47, 48, 74, 88, 64, 53, 77, 50,
               24, 91, 87, 55, 60, 75, 91, 22, 47, 63,
               81, 88, 26, 48, 69, 59, 84, 77, 28, 36,
               59, 74, 89, 73, 91, 64, 55, 88, 90, 48,
               73, 97, 98, 40, 93, 50, 78, 60, 44, 77,
               82, 51, 53, 65, 98, 59, 94, 91, 52, 44,
               65, 85, 72, 92, 49, 67, 58, 48, 62, 54,
               89, 67, 58, 48, 85, 45, 77, 76, 81, 77]
          

          代码:

              print('value n:')
              for i in range(0, n.__len__(), 10):
                  print(*n[i:i+10], sep=', ',end='\n')
          

          输出:

          value n:
          85, 13, 99, 34, 71, 15, 82, 24, 64, 61
          67, 99, 50, 68, 25, 37, 32, 27, 14, 91
          79, 15, 47, 48, 74, 88, 64, 53, 77, 50
          24, 91, 87, 55, 60, 75, 91, 22, 47, 63
          81, 88, 26, 48, 69, 59, 84, 77, 28, 36
          59, 74, 89, 73, 91, 64, 55, 88, 90, 48
          73, 97, 98, 40, 93, 50, 78, 60, 44, 77
          82, 51, 53, 65, 98, 59, 94, 91, 52, 44
          65, 85, 72, 92, 49, 67, 58, 48, 62, 54
          89, 67, 58, 48, 85, 45, 77, 76, 81, 77
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2014-10-19
            • 1970-01-01
            • 1970-01-01
            • 2021-08-16
            • 2015-12-21
            • 1970-01-01
            • 2019-06-15
            • 1970-01-01
            相关资源
            最近更新 更多