본문 바로가기

Python/Python FAQ540

Python 단위 테스트 - assertRaises의 반대?, Python unittest - opposite of assertRaises? 질문 나는 특정한 상황에서 예외가 발생하지 않음을 확인하기 위해 테스트를 작성하고 싶습니다. 예외가 발생하는지 테스트하는 것은 간단합니다... sInvalidPath=AlwaysSuppliesAnInvalidPath() self.assertRaises(PathIsNotAValidOne, MyObject, sInvalidPath) ... 하지만 반대로 어떻게 할 수 있을까요. 다음과 같은 것을 원합니다... sValidPath=AlwaysSuppliesAValidPath() self.assertNotRaises(PathIsNotAValidOne, MyObject, sValidPath) 답변 def run_test(self): try: myFunc() except ExceptionType: self.fail.. 2023. 10. 18.
Python 파이썬을 사용하여 터치를 구현하십시오., Implement touch using Python? 질문 touch는 파일의 수정 및 접근 시간을 현재 시간으로 설정하는 Unix 유틸리티입니다. 파일이 존재하지 않으면 기본 권한으로 생성됩니다. 이를 Python 함수로 구현하는 방법은 어떻게 될까요? 가능한 한 크로스 플랫폼 및 완전한 방식으로 구현해보세요. ("python touch file"에 대한 현재 Google 검색 결과는 그리 좋지 않지만, os.utime을 가리킵니다.) 답변 파이썬 3.4부터 새로 추가된 것 같습니다 - pathlib. from pathlib import Path Path('path/to/file.txt').touch() 이렇게 하면 경로에 file.txt 파일이 생성됩니다. -- Path.touch(mode=0o777, exist_ok=True) 주어진 경로에 파일을 생.. 2023. 10. 18.
Python argparse 명령 줄 플래그 (옵션) 인자 없이, Python argparse command line flags without arguments 질문 명령 줄 인수에 선택적 플래그를 추가하는 방법은 무엇인가요? 예를 들어, 다음과 같이 작성할 수 있도록 하려면 python myprog.py 또는 python myprog.py -w 다음을 시도해보았습니다. parser.add_argument('-w') 하지만 다음과 같은 오류 메시지가 표시됩니다. Usage [-w W] error: argument -w: expected one argument 이는 -w 옵션에 대한 인수 값이 필요하다는 것을 의미합니다. 플래그만 받아들이는 방법은 무엇인가요? 이 질문에 대해서는 http://docs.python.org/library/argparse.html을(를) 참조하십시오. 답변 As you have it, the argument w is expecting .. 2023. 10. 18.
Python 함수 호출 시간 초과, Timeout on a function call 질문 I'm calling a function in Python which I know may stall and force me to restart the script. How do I call the function or what do I wrap it in so that if it takes longer than 5 seconds the script cancels it and does something else? 답변 UNIX에서 실행 중이라면 signal 패키지를 사용할 수 있습니다: In [1]: import signal # 타임아웃을 위한 핸들러 등록 In [2]: def handler(signum, frame): ...: print("영원히 끝났습니다!") ...: raise Exception.. 2023. 10. 18.