전체 NumPy 배열 인쇄

Muhammad Maisam Abbas 2021년7월18일
전체 NumPy 배열 인쇄

이 튜토리얼은 파이썬에서 전체 NumPy 배열을 인쇄하는 방법을 소개합니다.

Python에서numpy.set_printoptions()함수를 사용하여 전체 NumPy 배열 인쇄

기본적으로 배열의 길이가 큰 경우 Python은 배열이 인쇄 될 때 출력을 자릅니다. 이 현상은 아래 코드 예제에서 설명됩니다.

import numpy as np

array = np.arange(10000)
print(array)

출력:

[   0    1    2 ... 9997 9998 9999]

위의 코드에서 먼저 Python의np.arange()함수를 사용하여 0에서 9999까지의 숫자 값을 포함하는 NumPy 배열array를 만들었습니다. 그런 다음print()함수를 사용하여 배열의 요소를 인쇄했습니다. 배열이 너무 커서 완전히 표시 할 수 없기 때문에 출력이 잘립니다.

이 문제는 numpy.set_printoptions()함수로 해결할 수 있습니다. Python에서 배열 인쇄와 관련된 다른 매개 변수를 설정합니다. numpy.set_printoptions()함수의threshold매개 변수를sys.maxsize에 사용하여 전체 NumPy 배열을 인쇄 할 수 있습니다. sys.maxsize속성을 사용하려면sys라이브러리도 가져와야합니다. 다음 코드 예제는 Python에서numpy.set_printoptions()함수 및sys.maxsize속성을 사용하여 전체 NumPy 배열을 인쇄하는 방법을 보여줍니다.

import sys
import numpy as np

array = np.arange(10001)
np.set_printoptions(threshold=sys.maxsize)
print(array)

출력:

[    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    25    26    27    28    29    30    31    32    33    34    35
    36    37    38    39    40    41    42    43    44    45    46    47
    48    49    50    51    52    53    54    55    56    57    58    59
    60    61    62    63    64    65    66    67    68    69    70    71
    72    73    74    75    76    77    78    79    80    81    82    83
    84    85    86    87    88    89    90    91    92    93    94    95
    96    97    98    99   100   101   102   103   104   105   106   107
   108   109   110   111   112   113   114   115   116   117   118   119
...
  9912  9913  9914  9915  9916  9917  9918  9919  9920  9921  9922  9923
  9924  9925  9926  9927  9928  9929  9930  9931  9932  9933  9934  9935
  9936  9937  9938  9939  9940  9941  9942  9943  9944  9945  9946  9947
  9948  9949  9950  9951  9952  9953  9954  9955  9956  9957  9958  9959
  9960  9961  9962  9963  9964  9965  9966  9967  9968  9969  9970  9971
  9972  9973  9974  9975  9976  9977  9978  9979  9980  9981  9982  9983
  9984  9985  9986  9987  9988  9989  9990  9991  9992  9993  9994  9995
  9996  9997  9998  9999 10000]

위의 코드에서 먼저numpy.arange()함수를 사용하여 0에서 10000까지의 요소를 포함하는 NumPy 배열array를 생성했습니다. np.set_printoptions(threshold = sys.maxsize)함수를 사용하여 배열의 인쇄 옵션을 최대로 설정했습니다. 그런 다음 Python에서 간단한print()함수로 전체 배열을 인쇄했습니다.

NumPy라이브러리 만 사용하는 문제에 대한 또 다른 해결책이 있습니다. numpy.set_printoptions()함수 내에서thresholdnp.inf와 동일하게 지정하여 전체 배열을 Python으로 인쇄 할 수 있습니다. np.inf속성은 전체 배열이 인쇄 될 때까지print()가 무한히 실행되도록 지정합니다. 다음 코드 예제를 참조하십시오.

import numpy as np

array = np.arange(10001)
np.set_printoptions(threshold=np.inf)
print(array)

출력:

[    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    25    26    27    28    29    30    31    32    33    34    35
    36    37    38    39    40    41    42    43    44    45    46    47
    48    49    50    51    52    53    54    55    56    57    58    59
    60    61    62    63    64    65    66    67    68    69    70    71
    72    73    74    75    76    77    78    79    80    81    82    83
    84    85    86    87    88    89    90    91    92    93    94    95
    96    97    98    99   100   101   102   103   104   105   106   107
   108   109   110   111   112   113   114   115   116   117   118   119
...
  9912  9913  9914  9915  9916  9917  9918  9919  9920  9921  9922  9923
  9924  9925  9926  9927  9928  9929  9930  9931  9932  9933  9934  9935
  9936  9937  9938  9939  9940  9941  9942  9943  9944  9945  9946  9947
  9948  9949  9950  9951  9952  9953  9954  9955  9956  9957  9958  9959
  9960  9961  9962  9963  9964  9965  9966  9967  9968  9969  9970  9971
  9972  9973  9974  9975  9976  9977  9978  9979  9980  9981  9982  9983
  9984  9985  9986  9987  9988  9989  9990  9991  9992  9993  9994  9995
  9996  9997  9998  9999 10000]

np.set_printoptions()함수를 사용하여threshold매개 변수를np.inf로 설정합니다. 그런 다음 Python에서 간단한print()함수로 전체 배열을 인쇄했습니다. 이 방법은NumPy라이브러리 만 필요하므로 이전 방법보다 선호됩니다.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn