파이썬 numpy 질문합니다

조회수 1456회

제가 from itertools import permutations a=permutations(['1','4','5','6','7','9'],6)

이를 실행하여 1,4,5,6,7,9로 이루어진 배치 (6! 만큼) 의 결과를 얻어내었는데

이를 numpy를 사용하여 연산을 해보려고 합니다. 그런데 numpy에 나열되도록 하는 방법을 모르겠네요 ㅠㅠ 알려주시면 감사하겠습니다

1 답변

  • 좋아요

    1

    싫어요
    채택 취소하기
    from itertools import permutations
    import numpy as np
    
    a=permutations(['1','4','5','6','7','9'],6)
    b = np.array(list(a))
    
    In [29]: b
    Out[29]:
    array([['1', '4', '5', '6', '7', '9'],
           ['1', '4', '5', '6', '9', '7'],
           ['1', '4', '5', '7', '6', '9'],
           ...,
           ['9', '7', '6', '4', '5', '1'],
           ['9', '7', '6', '5', '1', '4'],
           ['9', '7', '6', '5', '4', '1']],
          dtype='<U1')
    

    이런것을 말하는 건가요?

    • 감사합니다! 그런데 혹시 전체 720가지 경우의 수가 다 나오게 만들 수는 없나요...? 중간에 생략된 부분을 어떻게 볼 수 있을까요 ㅠㅠ 곽성일 2017.9.13 18:38
    • 그리고 정말 죄송한데 In 과 Out 이 의미하는 바가 무엇인지 궁금합니다! 너무 기초적인거라면 죄송합니다 곽성일 2017.9.13 18:45
    • ipython 이라는 파이썬쉘에서 프롬프트 역활이에요. 그리고 중간에 생략된 것은 데이터 양이 많아서 그렇게 보여주는 것입니다. 정영훈 2017.9.13 21:39
    • 혹시 numpy를 사용하여 만든 리스트는 연산이 되지 않는 이유는 무엇인지 알 수 있을까요? 곽성일 2017.9.14 12:52
    • 무슨 연산이 안되나요? 정영훈 2017.9.14 22:09
    • 예를들어 a=np.array(1,2,3) 을 입력한 후에 a*2 는 연산이 되는데 곽성일 2017.9.15 08:27
    • 예를들어 a=np.array(1,2,3) 을 입력한 후에 a*2 는 연산이 되는데 위에서 질문한 방식대로 실행한 후에 list를 만든 'b'를 가지고 b*2를 연산하려 하니 실행이 되지 않네요ㅠㅠ 곽성일 2017.9.15 08:28
    • b = np.array(list(a), np.int32) 이렇게 만드세요. 정영훈 2017.9.15 16:09
    • 감사합니다! 곽성일 2017.9.16 20:26

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)