Jupyter Notebook에서 쉘 명령에 (의사적으로) 표준 입력을 제공합니다.
3487 단어 Jupyter-notebookIPython
짧게
In[1]: std_in = input()
In[2]: !echo $std_in | your_command
문제
명령행에서 실행하는 명령 중 일부는 표준 입력을 받아들입니다. 위에 나타낸 cat
그렇습니다만, 현실적인 예로서는, 예를 들면, JUMAN++ 라고 하는 형태소 해석 소프트 1 는 표준 입력에 일본어의 문장을 건네주면, 형태소 해석 결과를 돌려줍니다.
$ jumanpp
これはペンです
これ これ これ 指示詞 7 名詞形態指示詞 1 * 0 * 0 NIL
は は は 助詞 9 副助詞 2 * 0 * 0 NIL
ペン ぺん ペン 名詞 6 普通名詞 1 * 0 * 0 "代表表記:ペン/ぺん カテゴリ:人工物-その他"
です です だ 判定詞 4 * 0 判定詞 25 デス列基本形 27 NIL
EOS
"이것은 펜입니다"가 표준 입력이고 그 이후의 행은 출력입니다.
이것을 Jupyter Notebook에서 움직이고 싶은 문제입니다.
전제 등
IPython/Jupyter Notebook에서는 줄 앞에 !
를 붙이면 시스템 명령 2(쉘 명령)이 실행됩니다. (덧붙여 ls
와 같은 기본적인 명령의 몇개인가는 !
를 붙이지 않아도 실행됩니다)
In [1]:!ls
Applications/
Desktop/
Documents/
...
표준 출력은 파이썬 변수에 할당할 수도 있습니다.
In [1]:filesandfolders = !ls
In [2]:filesandfolders
['Applications',
'Desktop',
'Documents',
...]
반대로 파이썬 변수를 명령 인수로 만들 수도 있습니다. 변수 이름 앞에 $
를 붙이면 명령 열에서 사용할 수 있습니다.
In [1]:text = 'Hello!'
In [2]:!echo $text
Hello!
그러나 노트북에서는 앞의 예와 같이 표준 입력을 받을 수 없습니다. (jupyter==1.0.0, notebook==5.7.8) (ipython 인터프리터로 가능)
해결
파이썬 함수 input()
는 표준 입력을 받아들입니다. Jupyter Notebook에서도 좋은 느낌의 입력창을 내줍니다. (``짧게'' 참조)
그렇게 받은 표준 입력을 echo
로 명령에 건네주면 OK.
소감
In [1]:!echo "これはペンです" | jumanpp
에서 부족하다. 하지만 표준 입력을 주고 싶은 경우도 있습니다.
참고문헌
Jupyter Notebook에서 시스템 명령을 실행하여 문자열 목록으로 가져옵니다.
Mecab 게다가 그렇습니다. ↩
뭐라고 부르는 것이 정확한지 모르겠습니다. 커맨드 라인에서 실행하는 소위 "명령"입니다. ↩
Reference
이 문제에 관하여(Jupyter Notebook에서 쉘 명령에 (의사적으로) 표준 입력을 제공합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tancematrix/items/c190184783188db06893
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
In[1]: std_in = input()
In[2]: !echo $std_in | your_command
명령행에서 실행하는 명령 중 일부는 표준 입력을 받아들입니다. 위에 나타낸
cat
그렇습니다만, 현실적인 예로서는, 예를 들면, JUMAN++ 라고 하는 형태소 해석 소프트 1 는 표준 입력에 일본어의 문장을 건네주면, 형태소 해석 결과를 돌려줍니다.$ jumanpp
これはペンです
これ これ これ 指示詞 7 名詞形態指示詞 1 * 0 * 0 NIL
は は は 助詞 9 副助詞 2 * 0 * 0 NIL
ペン ぺん ペン 名詞 6 普通名詞 1 * 0 * 0 "代表表記:ペン/ぺん カテゴリ:人工物-その他"
です です だ 判定詞 4 * 0 判定詞 25 デス列基本形 27 NIL
EOS
"이것은 펜입니다"가 표준 입력이고 그 이후의 행은 출력입니다.
이것을 Jupyter Notebook에서 움직이고 싶은 문제입니다.
전제 등
IPython/Jupyter Notebook에서는 줄 앞에 !
를 붙이면 시스템 명령 2(쉘 명령)이 실행됩니다. (덧붙여 ls
와 같은 기본적인 명령의 몇개인가는 !
를 붙이지 않아도 실행됩니다)
In [1]:!ls
Applications/
Desktop/
Documents/
...
표준 출력은 파이썬 변수에 할당할 수도 있습니다.
In [1]:filesandfolders = !ls
In [2]:filesandfolders
['Applications',
'Desktop',
'Documents',
...]
반대로 파이썬 변수를 명령 인수로 만들 수도 있습니다. 변수 이름 앞에 $
를 붙이면 명령 열에서 사용할 수 있습니다.
In [1]:text = 'Hello!'
In [2]:!echo $text
Hello!
그러나 노트북에서는 앞의 예와 같이 표준 입력을 받을 수 없습니다. (jupyter==1.0.0, notebook==5.7.8) (ipython 인터프리터로 가능)
해결
파이썬 함수 input()
는 표준 입력을 받아들입니다. Jupyter Notebook에서도 좋은 느낌의 입력창을 내줍니다. (``짧게'' 참조)
그렇게 받은 표준 입력을 echo
로 명령에 건네주면 OK.
소감
In [1]:!echo "これはペンです" | jumanpp
에서 부족하다. 하지만 표준 입력을 주고 싶은 경우도 있습니다.
참고문헌
Jupyter Notebook에서 시스템 명령을 실행하여 문자열 목록으로 가져옵니다.
Mecab 게다가 그렇습니다. ↩
뭐라고 부르는 것이 정확한지 모르겠습니다. 커맨드 라인에서 실행하는 소위 "명령"입니다. ↩
Reference
이 문제에 관하여(Jupyter Notebook에서 쉘 명령에 (의사적으로) 표준 입력을 제공합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tancematrix/items/c190184783188db06893
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
In [1]:!ls
Applications/
Desktop/
Documents/
...
In [1]:filesandfolders = !ls
In [2]:filesandfolders
['Applications',
'Desktop',
'Documents',
...]
In [1]:text = 'Hello!'
In [2]:!echo $text
Hello!
파이썬 함수
input()
는 표준 입력을 받아들입니다. Jupyter Notebook에서도 좋은 느낌의 입력창을 내줍니다. (``짧게'' 참조)그렇게 받은 표준 입력을
echo
로 명령에 건네주면 OK.소감
In [1]:!echo "これはペンです" | jumanpp
에서 부족하다. 하지만 표준 입력을 주고 싶은 경우도 있습니다.
참고문헌
Jupyter Notebook에서 시스템 명령을 실행하여 문자열 목록으로 가져옵니다.
Mecab 게다가 그렇습니다. ↩
뭐라고 부르는 것이 정확한지 모르겠습니다. 커맨드 라인에서 실행하는 소위 "명령"입니다. ↩
Reference
이 문제에 관하여(Jupyter Notebook에서 쉘 명령에 (의사적으로) 표준 입력을 제공합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tancematrix/items/c190184783188db06893
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
In [1]:!echo "これはペンです" | jumanpp
Jupyter Notebook에서 시스템 명령을 실행하여 문자열 목록으로 가져옵니다.
Mecab 게다가 그렇습니다. ↩
뭐라고 부르는 것이 정확한지 모르겠습니다. 커맨드 라인에서 실행하는 소위 "명령"입니다. ↩
Reference
이 문제에 관하여(Jupyter Notebook에서 쉘 명령에 (의사적으로) 표준 입력을 제공합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tancematrix/items/c190184783188db06893텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)