본문 바로가기

Python/Python FAQ540

Python 파이썬에서 상위 디렉토리를 어떻게 얻을 수 있나요?, How do I get the parent directory in Python? 질문 누군가가 Python에서 경로의 상위 디렉토리를 크로스 플랫폼 방식으로 얻는 방법에 대해 알려주실 수 있을까요? 예시: C:\Program Files ---> C:\ 그리고 C:\ ---> C:\ 만약 디렉토리에 상위 디렉토리가 없다면, 디렉토리 자체를 반환합니다. 이 질문은 간단해 보일 수 있지만, 구글에서 찾아내지 못했습니다. 답변 파이썬 3.4 pathlib 모듈을 사용하세요. from pathlib import Path path = Path("/here/your/path/file.txt") print(path.parent.absolute()) 이전 답변 다음을 시도해보세요: import os print os.path.abspath(os.path.join(yourpath, os.pardir)).. 2023. 10. 9.
Python re.compile 없이 대소문자를 구분하지 않는 정규 표현식은 어떻게 작성하나요?, Case insensitive regular expression without re.compile? 질문 파이썬에서는 re.compile을 사용하여 대소문자를 구분하지 않는 정규 표현식을 컴파일 할 수 있습니다: >>> s = 'TeSt' >>> casesensitive = re.compile('test') >>> ignorecase = re.compile('test', re.IGNORECASE) >>> >>> print casesensitive.match(s) None >>> print ignorecase.match(s) re.compile을 사용하지 않고도 동일한 작업을 할 수 있는 방법이 있을까요? 문서에서 Perl의 i 접미사 (예: m/test/i)와 같은 것을 찾을 수 없습니다. 답변 다음과 같이 flags 매개변수에 re.IGNORECASE를 전달하여 search, match 또는 sub .. 2023. 10. 9.
Python 내 파이썬 쉘이 32비트인지 64비트인지 어떻게 확인할 수 있나요?, How do I determine if my python shell is executing in 32bit or 64bit? 질문 쉘 내에서 쉘이 어떤 모드인지 어떻게 알 수 있을까요? platform 모듈을 살펴봤지만, 이 모듈은 "실행 파일에 사용된 비트 아키텍처와 링크 형식에 대해서만 알려줍니다". 제 바이너리는 64비트로 컴파일되었고 (OS X 10.6에서 실행 중입니다), 그래서 항상 64비트를 보고하는 것 같습니다. 하지만 저는 여기에서 설명된 방법을 사용하여 32비트 모드로 강제로 설정하고 있습니다. 답변 하나의 방법은 여기서 sys.maxsize를 확인하는 것입니다: $ python-32 -c 'import sys;print("%x" % sys.maxsize, sys.maxsize > 2**32)' ('7fffffff', False) $ python-64 -c 'import sys;print("%x" % sys... 2023. 10. 9.
Python 모듈의 import 문은 항상 맨 위에 있어야 합니까?, Should import statements always be at the top of a module? 질문 PEP 8는 다음과 같이 명시합니다: 임포트는 항상 파일의 맨 위에 위치하며, 모듈 주석과 독스트링 바로 다음에 오고, 모듈 전역 변수와 상수 앞에 위치합니다. 하지만 내가 임포트하는 클래스/메소드/함수가 드물게 사용되는 경우, 필요할 때만 임포트하는 것이 더 효율적이지 않을까요? 이렇게 하는 것이: class SomeClass(object): def not_often_called(self) from datetime import datetime self.datetime = datetime.now() 이렇게 하는 것보다 더 효율적이지 않을까요? from datetime import datetime class SomeClass(object): def not_often_called(self) self.d.. 2023. 10. 9.