python으로 gui, cmd 실시간 정보교환

gui에서 버튼 하나를 클릭하면 cmd 창이 뜨게 되는데, 그 cmd 창에서는 데이터를 분석하고 print해주는 역할을 하고 있습니다. 이때 출력되는 문자열들을 gui에 있는 qtextedit으로 복사하여 실시간으로 가져오고 싶습니다. 어떤 방법을 사용해야 할까요?

1답변

  • 좋아요

    2

    싫어요
    채택취소하기

    cmd 창이 문제가 아닐겁니다.

    정확히 질문은 다른 프로세스와 통신하고 싶다 아닌가요?

    버튼을 클릭하면 프로세스 하나를 포크(외부 프로세스 수행)하고 그 포크된 프로세스와 통신하고 싶다 일 듯 합니다.

    IPC 방법은 다양합니다.

    파이썬에서는 아래의 링크를 참조하시기 바랍니다. https://docs.python.org/3.6/library/multiprocessing.html#sharing-state-between-processes

    • 말씀하신대로 멀티프로세싱을 이용하여 코딩을 해봤는데, cmd창에서 일을 수행하는동안 gui창이 멈추는 현상이 나타나더라구요. 혹시 제가 잘못 코딩한걸까요? 안녕하세요 2018.11.7 16:17
    • 이해를 하고 사용해야 합니다. gui 는 하나의 쓰레드에서 동작을 합니다. qt에서 쓰레드간에 데이터를 주고 받고 싶다면 slot signal 이나 이벤트로 주고 받아야합니다. gui가 멈추는 현상은 무엇을 잘못했을 가능성이 큽니다. 정영훈 2018.11.7 21:48
    • 감사합니다. 덕분에 문제 잘 해결했습니다. 안녕하세요 2018.11.8 10:40

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.