반응형
IPython 및 Jupyter Notebook에서 함수 호출 전 세미콜론을 사용하는 이상한 동작
나는 주피터 노트북을 사용하는 이상한 행동을 우연히 발견했고, 만약 있다면, 그 목적이 무엇인지 궁금했다. 함수 호출 전에 세미콜론을 입력하면 함수 이름 뒤의 모든 코드를 반영하는 문자열에 함수를 적용한 결과를 얻을 수 있습니다. 예를 들어, 이렇게 하면 다음과 같은 결과를 얻을 수 있습니다.
In [138]: ;list('ab')
Out[138]:
['(', "'", 'a', 'b', "'", ')']
나는 주피터를 아이피톤 4와 함께 사용하고 있다. 그것은 주피터 노트북뿐만 아니라 아이피톤에서도 발생한다.
그것은 의도된 것이고, 만약 그렇다면, 왜?
함수 인수의 자동 인용을 위한 명령입니다.
설명서에서 다음을 참조하십시오.
, 또는 ;를 선의 첫 문자로 사용하여 함수의 인수를 강제로 따옴표로 묶을 수 있습니다. 예:
In [1]: ,my_function /home/me # becomes my_function("/home/me")
';'를 사용하면 전체 인수가 하나의 문자열로 따옴표로 묶이고 ','는 공백으로 분할됩니다.
In [2]: ,my_function a b c # becomes my_function("a","b","c")
In [3]: ;my_function a b c # becomes my_function("a b c")
', 또는 ';'는 줄의 첫 번째 문자여야 합니다! 이것은 작동하지 않을 것이다.
In [4]: x = ,my_function /home/me # syntax error
사용자의 경우 및 를 포함한 모든 문자를 따옴표로 묶습니다.
여기서도 유사한 출력을 얻을 수 있지만 작은 따옴표는 사용하지 않습니다.
In [279]:
;list(ab)
Out[279]:
['(', 'a', 'b', ')']
반응형
'개발하자' 카테고리의 다른 글
주피터 노트북을 사용하여 그리드에 여러 png을 표시하는 방법 (0) | 2022.11.29 |
---|---|
유형 스크립트: 열거형의 문자열 리터럴 유니언 유형 (0) | 2022.11.28 |
Flowter 디버거가 중단점에서 중지되지 않음 (0) | 2022.11.27 |
pipenv에는 python 3.7이 필요하지만 설치된 버전은 3.8이며 설치되지 않습니다. (0) | 2022.11.26 |
Kubernetes: 동일한 포트에서 실행되는 마이크로 서비스? (0) | 2022.11.26 |