본문 바로가기

Python/Python FAQ540

Python 파이썬에서 줄 바꿈 (줄 계속)을 어떻게 할 수 있나요?, How can I do a line break (line continuation) in Python? 질문 주어진: e = 'a' + 'b' + 'c' + 'd' 위 코드를 두 줄로 작성하려면 어떻게 해야 할까요? e = 'a' + 'b' + 'c' + 'd' 답변 라인이란 무엇인가요? 다음 라인에서 인수를 문제없이 사용할 수 있습니다: a = dostuff(blahblah1, blahblah2, blahblah3, blahblah4, blahblah5, blahblah6, blahblah7) 그렇지 않으면 다음과 같이 할 수 있습니다: if (a == True and b == False): 또는 명시적 줄 바꿈으로: if a == True and \ b == False: 자세한 내용은 스타일 가이드를 확인하세요. 괄호를 사용하면 예제를 여러 줄로 작성할 수 있습니다: a = ('1' + '2' + '3.. 2023. 5. 24.
Python 프로그램을 중단/종료하지 않고 전체 예외 추적을 잡아서 출력하는 방법은 무엇인가요?, How to catch and print the full exception traceback without halting/exiting the program? 질문 나는 종료하지 않고 예외를 잡고 기록하고 싶습니다. 예를 들어, try: do_stuff() except Exception as err: print(Exception, err) # 여기에서 전체 추적을 인쇄하고 싶습니다. # 예외 이름과 세부 정보뿐만 아니라 나는 예외가 발생할 때 try/except가 예외를 가로채는 것 없이 정확히 같은 출력을 인쇄하고 싶으며, 내 프로그램에서 종료되지 않기를 원합니다. 답변 traceback.format_exc() 또는 sys.exc_info()는 원하는 정보가 있다면 더 많은 정보를 제공합니다. import traceback import sys try: do_stuff() except Exception: print(traceback.format_exc()) #.. 2023. 5. 24.
Python 선행 0이 있는 숫자 표시 [중복], Display number with leading zeros [duplicate] 질문 2자리 미만의 모든 숫자에 대해 선행 0을 표시하는 방법은 무엇인가요? 1 → 01 10 → 10 100 → 100 답변 파이썬 2 (그리고 파이썬 3)에서 다음을 수행할 수 있습니다: number = 1 print("%02d" % (number,)) 기본적으로 %는 printf 또는 sprintf와 같습니다 (문서 참조). Python 3.+의 경우, 동일한 동작은 format으로도 달성할 수 있습니다: number = 1 print("{:02d}".format(number)) Python 3.6+의 경우, 동일한 동작은 f-strings로도 달성할 수 있습니다: number = 1 print(f"{number:02d}") 2023. 5. 24.
내 Python site-packages 디렉토리의 위치를 어떻게 찾을 수 있나요?, How do I find the location of my Python site-packages directory? 질문 내 site-packages 디렉토리의 위치를 어떻게 찾을 수 있나요? 답변 사이트 패키지 디렉토리에는 전역과 사용자별 두 가지 유형이 있습니다. 전역 사이트 패키지("dist-packages") 디렉토리는 다음을 실행할 때 sys.path에 나열됩니다: python -m site 더 간결한 목록을 원하면 Python 코드에서 site 모듈에서 getsitepackages를 실행합니다: python -c 'import site; print(site.getsitepackages())' 경고: 가상 환경에서는 virtualenv의 이전 버전에서는 getsitepackages를 사용할 수 없으며, 위의 sys.path는 가상 환경의 사이트 패키지 디렉토리를 올바르게 나열합니다. Python 3에서는 대신.. 2023. 5. 24.