>

개발자, 파이썬에서 5x5 그리드를 만들고 싶습니다.이 코드를 시도하지만 여기서 필요한 출력을 생성하지 못합니다. while 루프에 abc를 사용합니다.

   l1 = []
    abc = 1
    while abc == 5:
       for i in range(1,6,1):
          l1.append(i)
           abc+=1
     print(l1)

하지만 그것의 아웃은 []

이 유형의 출력을 원합니다

['0','0','0','0','0']
['0','0','0','0','0']
['0','0','0','0','0']
['0','0','0','0','0']
['0','0','0','0','0']

  • 답변 # 1

    조건부 abc == 5 가 있기 때문에 논리가 매우 혼란 스럽다  while 루프에서 실행되지 않습니다. 다음을 통해 원하는 것을 생성 할 수 있습니다.

    [[i for i in range(j, j + 5)] for j in range(0, 25, 5)]
    
    

    출력은 다음과 같습니다 :

    [[0, 1, 2, 3, 4],
     [5, 6, 7, 8, 9],
     [10, 11, 12, 13, 14],
     [15, 16, 17, 18, 19],
     [20, 21, 22, 23, 24]]
    
    

    1에서 시작하여 25에서 끝나기를 원하는 경우 :

    [[i for i in range(j, j + 5)] for j in range(1, 26, 5)]
    
    

    출력은 다음과 같습니다 :

    [1, 2, 3, 4, 5],
     [6, 7, 8, 9, 10],
     [11, 12, 13, 14, 15],
     [16, 17, 18, 19, 20],
     [21, 22, 23, 24, 25]]
    
    

    업데이트 : (질문에 제공 한 결과에 따라):

    grid = [[i for i in range(j, j + 5)] for j in range(0, 25, 5)]
    for item in grid:
        print(item)
    
    

  • 답변 # 2

    여러분이 요구하는 바에 대한 추측은 다음과 같습니다.

    >>> l1 = [[i for i in range(1, 6)] for _ in range(5)]
    >>> print(*l1, sep='\n')
    [1, 2, 3, 4, 5]
    [1, 2, 3, 4, 5]
    [1, 2, 3, 4, 5]
    [1, 2, 3, 4, 5]
    [1, 2, 3, 4, 5]
    >>>
    
    

    print()  관용구는 파이썬 쉘에있을 때마다 기억하고 사용하기에 충분히 간단하여 2 차원 목록을 빠르게 검사하고 싶습니다.

  • 이전 php - codeigniter에서 htaccess의 URL 리디렉션
  • 다음 vbnet SQL SERVER" '='근처의 구문이 잘못되었습니다"