728x90
반응형

Python 324

Python의 경로에서 확장자없이 파일 이름을 얻는 방법

질문 : Python의 경로에서 확장자없이 파일 이름을 얻는 방법은 무엇입니까? Python의 경로에서 확장자없이 파일 이름을 얻는 방법은 무엇입니까? 예를 들어, "/path/to/some/file.txt" "file" 합니다. 답변 확장자없이 파일 이름 얻기 : import os print(os.path.splitext("/path/to/some/file.txt")[0]) 결과물 : /path/to/some/file os.path.splitext 문서 . 중요 참고 : 파일 이름에 여러 개의 점이있는 경우 마지막 점 이후의 확장자 만 제거됩니다. 예를 들면 : import os print(os.path.splitext("/path/to/some/file.txt.zip.asc")[0]) 결과물 : /p..

Python에서 "with open"을 사용하여 여러 파일을 여는 방법

질문 : Python에서 "열기 사용"을 사용하여 여러 파일을 열 수 있습니까? 나는 그들 모두에 쓸 수 IFF에, 한 번에 파일의 몇 가지를 변경하고 싶습니다. 어떻게 든 여러 열린 호출을 with 문과 결합 할 수 있는지 궁금합니다. try: with open('a', 'w') as a and open('b', 'w') as b: do_something() except IOError as e: print 'Operation failed: %s' % e.strerror 이것이 가능하지 않다면이 문제에 대한 우아한 해결책은 어떤 모습일까요? 답변 Python 2.7 (또는 각각 3.1)부터 다음과 같이 작성할 수 있습니다. with open('a', 'w') as a, open('b', 'w') as b..

파이썬에서 @property 데코레이터의 작동원리

질문 : @property 데코레이터는 파이썬에서 어떻게 작동합니까? property 어떻게 작동하는지 이해하고 싶습니다. 나를 혼란스럽게하는 것은 property 을 데코레이터로도 사용할 수 있지만, 내장 함수로 사용할 때만 인수를 사용하고 데코레이터로 사용할 때는 인수를 사용하지 않는다는 것입니다. 이 예는 문서 에서 가져온 것입니다. class C: def __init__(self): self._x = None def getx(self): return self._x def setx(self, value): self._x = value def delx(self): del self._x x = property(getx, setx, delx, "I'm the 'x' property.") property ..

파이썬의 순서 집합

질문 : 파이썬에 순서 집합이 있습니까? 파이썬에는 순서가 지정된 사전이 있습니다. 순서 집합은 있습니까? 답변 Python 2 문서 에서 참조하는이를위한 순서가 지정된 세트 ( 새 링크 가능) 레시피가 있습니다. 이것은 수정없이 Py2.6 이상 및 3.0 이상에서 실행됩니다. 인터페이스는 초기화가 목록으로 수행되어야한다는 점을 제외하고는 일반 세트와 거의 동일합니다. OrderedSet([1, 2, 3]) 이것은 MutableSet이므로 .union 의 시그니처는 set의 시그니처와 일치하지 않지만 __or__ 포함하므로 유사한 것을 쉽게 추가 할 수 있습니다. @staticmethod def union(*sets): union = OrderedSet() union.union(*sets) return ..

사람들이 파이썬 스크립트의 첫 번째 줄에 #! / usr / bin / env python을 쓰는 이유

질문 : 사람들이 파이썬 스크립트의 첫 번째 줄에 #! / usr / bin / env python을 쓰는 이유는 무엇입니까? 파일이 그 줄없이 똑같이 실행되는 것처럼 보입니다. 답변 여러 버전의 Python이 설치되어있는 경우 /usr/bin/env 는 사용 된 인터프리터가 환경의 $PATH 의 첫 번째 인터프리터인지 확인합니다. #!/usr/bin/python 과 같은 것을 하드 코딩하는 것입니다. 괜찮지 만 유연성이 떨어집니다. Unix에서 해석 할 실행 #! 를 사용하여 사용할 인터프리터를 나타낼 수 있습니다. 첫 번째 줄의 시작 부분에 인터프리터 (및 필요한 모든 플래그)가 이어집니다. 당신이 다른 플랫폼에 대해 얘기하는 경우, 물론,이 규칙이 적용되지 않습니다 (하지만 "오두막 라인은"아무런 ..

파일이 예외없이 존재하는지 확인하는 방법

질문 : 파일이 예외없이 존재하는지 어떻게 확인합니까? try 문을 사용하지 않고 파일이 있는지 여부를 어떻게 확인합니까? 답변 당신은 같은 것을 할 수 있도록하는 이유 당신이있는 거 검사 인 경우 if file_exists: open_it() , 그것은 사용하는 것이 안전합니다 try 를 열기 위해 시도 주위를. 확인하고 열면 파일이 삭제되거나 이동 될 위험이 있습니다. 파일을 즉시 열 계획이 아니라면 os.path.isfile 경로가 기존 일반 파일이면 True 반환합니다. 이것은 심볼릭 링크를 따르므로 islink () 및 isfile () 모두 동일한 경로에 대해 참일 수 있습니다. import os.path os.path.isfile(fname) 파일인지 확인해야하는 경우. Python 3.4부..

ISO 8601 datetime 문자열을 Python datetime 객체로 변환하는 방법

질문 : ISO 8601 datetime 문자열을 Python datetime 객체로 어떻게 변환합니까? "2009-05-28T16 : 15 : 00"과 같은 형식의 datetime 문자열을 받고 있습니다 (이것은 ISO 8601입니다). 한 가지 hackish 옵션은 time.strptime 사용하여 문자열을 구문 분석하고 튜플의 처음 6 개 요소를 datetime 생성자에 전달하는 것입니다. datetime.datetime(*time.strptime("2007-03-04T21:08:12", "%Y-%m-%dT%H:%M:%S")[:6]) 나는 이것을하는 "더 깨끗한"방법을 찾을 수 없었다. 하나있어? 답변 시간대 처리 및 일반적으로 견고한 날짜 구문 분석을 위해 dateutil 라이브러리를 사용하는 것..

Python 객체가 "subscriptable" 여부가 의미하는 것

질문 : Python 객체가 "subscriptable"여부는 무엇을 의미합니까? "subscriptable"도메인에 속하는 개체 유형은 무엇입니까? 답변 __getitem__() 메서드를 구현 함을 의미합니다. 즉, "컨테이너"인 개체를 설명합니다. 즉, 다른 개체를 포함합니다. 여기에는 문자열, 목록, 튜플 및 사전이 포함됩니다. 출처 : https://stackoverflow.com/questions/216972/what-does-it-mean-if-a-python-object-is-subscriptable-or-not

Python 함수가 예외를 발생시키는 지 테스트 하는 방법

질문 : Python 함수가 예외를 발생시키는 지 어떻게 테스트합니까? 함수가 예상되는 예외를 throw하지 않는 경우에만 실패하는 unittest를 어떻게 작성합니까? 답변 TestCase.assertRaises (또는 TestCase.failUnlessRaises )를 사용합니다. 예를 들면 다음과 같습니다. import mymod class MyTestCase(unittest.TestCase): def test1(self): self.assertRaises(SomeCoolException, mymod.myfunc) 출처 : https://stackoverflow.com/questions/129507/how-do-you-test-that-a-python-function-throws-an-exception

Python3의 StringIO

질문 : Python3의 StringIO Python 3.2.1을 사용하고 있는데 StringIO 모듈을 가져올 수 없습니다. io.StringIO 사용하고 작동하지만 다음과 같이 numpy 의 genfromtxt 와 함께 사용할 수 없습니다. x="1 3\n 4.5 8" numpy.genfromtxt(io.StringIO(x)) 다음과 같은 오류가 발생합니다. TypeError: Can't convert 'bytes' object to str implicitly import StringIO 작성하면 ImportError: No module named 'StringIO' 답변 import StringIO를 쓸 때 그러한 모듈이 없다고 말합니다. Python 3.0의 새로운 기능에서 : StringIO 및..

파이썬에서 16 진수 문자열을 int로 변환

질문 : 파이썬에서 16 진수 문자열을 int로 변환파이썬에서 16 진수 문자열을 정수로 어떻게 변환합니까?0xffff "또는 " ffff "로 가질 수 있습니다.답변0x 접두사가 없으면 기본을 명시 적으로 지정해야합니다. 그렇지 않으면 알 수있는 방법이 없습니다.x = int("deadbeef", 16) 0x 접두사를 사용 하면 Python은 16 진수와 10 진수를 자동으로 구분할 수 있습니다.>>> print(int("0xdeadbeef", 0)) 3735928559 >>> print(int("10", 0)) 10 (이 접두사 추측 동작을 호출하려면 기본으로 0 을 지정 해야합니다 int() 는 기본 10으로 간주합니다.)출처 : https://stackoverflow.com/questions/20..

Python에서 환경 변수를 설정하는 방법

질문 : Python에서 환경 변수를 설정하는 방법은 무엇입니까? Python 스크립트에서 일부 환경 변수를 설정해야하며 Python에서 호출되는 다른 모든 스크립트에서 환경 변수 집합을 확인하고 싶습니다. 만약 내가한다면, os.environ["DEBUSSY"] = 1 1 이 문자열이어야한다고 불평합니다. 또한 내가 설정 한 후 Python에서 환경 변수를 읽는 방법 (스크립트의 후반부)을 알고 싶습니다. 답변 환경 변수는 문자열이어야하므로 os.environ["DEBUSSY"] = "1" DEBUSSY 변수를 문자열 1 로 설정합니다. 나중에이 변수에 액세스하려면 다음을 사용하십시오. print(os.environ["DEBUSSY"]) 하위 프로세스는 상위 프로세스의 환경 변수를 자동으로 상속하므로 ..

파이썬에서 추상 클래스와 인터페이스의 차이점

질문 : 파이썬에서 추상 클래스와 인터페이스의 차이점파이썬에서 추상 클래스와 인터페이스의 차이점은 무엇입니까?답변때때로 보게되는 것은 다음과 같습니다.class Abstract1: """Some description that tells you it's abstract, often listing the methods you're expected to supply.""" def aMethod(self): raise NotImplementedError("Should have implemented this") Python에는 공식적인 인터페이스 계약이 없으며 필요하지 않기 때문에 추상화와 인터페이스 사이의 Java 스타일 구분이 존재하지 않습니다. 누군가가 공식 인터페이스를 정의하려는 노력을한다면 그것은 또한 ..

Python 사전 검색 목록

질문 : Python 사전 검색 목록내가 이것을 가지고 있다고 가정합니다.[ {"name": "Tom", "age": 10}, {"name": "Mark", "age": 5}, {"name": "Pam", "age": 7} ] 이름으로 "Pam"을 검색하여 관련 사전을 검색하고 싶습니다 : {name: "Pam", age: 7}이것을 달성하는 방법?답변생성기 표현식을 사용할 수 있습니다.>>> dicts = [ ... { "name": "Tom", "age": 10 }, ... { "name": "Mark", "age": 5 }, ... { "name": "Pam", "age": 7 }, ... { "name": "Dick", "age": 12 } ... ] >>> next(item for item in..

"JSON 직렬화 가능하지 않은 datetime.datetime"을 극복하는 방법

질문 : "JSON 직렬화 가능하지 않은 datetime.datetime"을 극복하는 방법은 무엇입니까? 다음과 같은 기본 사전이 있습니다. sample = {} sample['title'] = "String" sample['somedate'] = somedatetimehere jsonify(sample) 시도하면 다음과 같은 결과가 나타납니다. TypeError: datetime.datetime(2012, 8, 8, 21, 46, 24, 862000) is not JSON serializable 사전 샘플이 위의 오류를 극복 할 수 있도록 어떻게해야합니까? 참고 : 관련성이 없을 수도 있지만 사전은 mongodb 에서 str(sample['somedate']) 를 출력하면 출력은 2012-08-08 2..

파이썬의 자식 클래스에서 부모 클래스의 메서드를 호출하는 방법

질문 : 파이썬의 자식 클래스에서 부모 클래스의 메서드를 어떻게 호출합니까? Python에서 간단한 개체 계층을 만들 때 파생 클래스에서 부모 클래스의 메서드를 호출 할 수 있기를 원합니다. Perl과 Java에는 이에 대한 키워드가 있습니다 ( super ). Perl에서는 다음과 같이 할 수 있습니다. package Foo; sub frotz { return "Bamf"; } package Bar; @ISA = qw(Foo); sub frotz { my $str = SUPER::frotz(); return uc($str); } Python에서는 자식에서 명시 적으로 부모 클래스의 이름을 지정해야하는 것으로 보입니다. Foo::frotz() 와 같은 작업을 수행해야합니다. 이 동작은 깊은 계층 구조를 ..

pickle을 사용하여 dict을 저장하는 방법

질문 : pickle을 사용하여 사전을 저장하려면 어떻게해야합니까? 파이썬 문서가 제공하는 정보를 살펴 보았지만 여전히 약간 혼란 스럽습니다. 누군가 새 파일을 작성하는 샘플 코드를 게시 한 다음 피클을 사용하여 사전을 덤프 할 수 있습니까? 답변 이 시도: import pickle a = {'hello': 'world'} with open('filename.pickle', 'wb') as handle: pickle.dump(a, handle, protocol=pickle.HIGHEST_PROTOCOL) with open('filename.pickle', 'rb') as handle: b = pickle.load(handle) print a == b 출처 : https://stackoverflow.com..

파이썬에서 한 문자열을 다른 문자열에 추가하는 방법

질문 : 파이썬에서 한 문자열을 다른 문자열에 어떻게 추가합니까? 다음과는 달리 Python에서 한 문자열을 다른 문자열에 추가하는 효율적인 방법을 원합니다. var1 = "foo" var2 = "bar" var3 = var1 + var2 사용할 좋은 기본 제공 방법이 있습니까? 답변 문자열에 대한 참조가 하나만 있고 다른 문자열을 끝에 연결하는 경우 CPython은 이제 특수한 경우에 해당 문자열을 제자리에서 확장하려고합니다. 최종 결과는 작업이 O (n)으로 분할되는 것입니다. 예 : s = "" for i in range(n): s+=str(i) 예전에는 O (n ^ 2) 였지만 지금은 O (n)입니다. 소스 (bytesobject.c)에서 : void PyBytes_ConcatAndDel(regi..

Ubuntu에서 pip를 통해 python3 버전의 패키지를 설치하는 방법

질문 : Ubuntu에서 pip를 통해 python3 버전의 패키지를 설치하는 방법은 무엇입니까? 나는 모두가 python2.7 및 python3.2 에 설치된 Ubuntu 12.04 . 심볼릭 링크 python python2.7 연결합니다. 내가 입력 할 때 : sudo pip install package-name 기본적 package-name python2 버전을 설치합니다. 일부 패키지는 python2 및 python3 모두 지원합니다. pip 를 통해 package-name 의 python3 버전을 설치하는 방법은 무엇입니까? 답변 virtualenv 를 빌드 한 다음 virtualenv를 활성화 한 후 python3의 패키지를 설치할 수 있습니다. 따라서 시스템이 엉망이되지 않습니다. :) 다음..

Python에서 모든 객체 속성을 가져오는 방법

질문 : Python에서 모든 객체 속성을 가져 오시겠습니까? 모든 속성 / 메서드 / 필드 / 등을 얻을 수있는 방법이 있습니까? 파이썬에서 객체의? vars() 가까운 내가 원하는 무엇이지만, 객체가하지 않는 한이 작동하지 않습니다 __dict__ 항상 사실이 아니다, (A에 대한 예를 들어, 그것은 사실이 아니에요 list 하는 dict 등). 답변 내장 함수 dir() 사용하십시오. 출처 : https://stackoverflow.com/questions/6886493/get-all-object-attributes-in-python

파이썬을 사용하여 CPU 수를 찾는 방법

질문 : 파이썬을 사용하여 CPU 수를 찾는 방법Python을 사용하는 로컬 머신의 CPU 수를 알고 싶습니다. 결과는 최적의 확장 사용자 공간 전용 프로그램으로 호출 할 때 time(1) 의해 출력 된 user/real답변버전이 2.6 이상인 파이썬이 있다면 간단히 사용할 수 있습니다.import multiprocessing multiprocessing.cpu_count() http://docs.python.org/library/multiprocessing.html#multiprocessing.cpu_count출처 : https://stackoverflow.com/questions/1006289/how-to-find-out-the-number-of-cpus-using-python

Python에서 datetime.time에 N 초를 추가하는 표준 방법

질문 : Python에서 datetime.time에 N 초를 추가하는 표준 방법은 무엇입니까? datetime.time 값이 주어지면 정수 초를 추가하는 표준 방법이 있습니까? 예를 들어 11:34:59 + 3 = 11:35:02 이러한 명백한 아이디어는 작동하지 않습니다. >>> datetime.time(11, 34, 59) + 3 TypeError: unsupported operand type(s) for +: 'datetime.time' and 'int' >>> datetime.time(11, 34, 59) + datetime.timedelta(0, 3) TypeError: unsupported operand type(s) for +: 'datetime.time' and 'datetime.timed..

Android에서 Python을 실행하는 방법

질문 : Android에서 Python을 실행하는 방법이 있습니까? 우리는 S60 버전에서 작업 중이며이 플랫폼에는 멋진 Python API가 있습니다. 그러나 안드로이드에서 파이썬에 대한 공식적인 것은 없지만 Jython 이 존재하기 때문에 snack과 robot이 함께 작동하도록하는 방법이 있습니까 ?? 답변 한 가지 방법은 Kivy를 사용하는 것입니다 . 멀티 터치 앱과 같은 혁신적인 사용자 인터페이스를 사용하는 애플리케이션의 신속한 개발을위한 오픈 소스 Python 라이브러리입니다. Kivy는 Linux, Windows, OS X, Android 및 iOS에서 실행됩니다. 지원되는 모든 플랫폼에서 동일한 [python] 코드를 실행할 수 있습니다. Kivy 쇼케이스 앱 출처 : https://st..

GUID / UUID를 만드는 방법

질문 : GUID / UUID를 만드는 방법JavaScript에서 전역 적으로 고유 한 식별자를 만들려고합니다. 모든 브라우저에서 어떤 루틴을 사용할 수 있는지, 내장 난수 생성기를 "무작위"하고 시드했는지 등을 잘 모르겠습니다.GUID / UUID는 32 자 이상이어야하며 ASCII 범위에 있어야 전달시 문제가 발생하지 않습니다.답변RFC 4122 에 따르면 GUID (Globally Unique IDentifier)라고도하는 UUID (Universally Unique IDentifier)는 특정 고유성 보장을 제공하도록 설계된 식별자입니다.몇 줄의 JavaScript 코드에서 RFC 호환 UUID를 구현할 수 있지만 (예 : 아래 @broofa의 답변 참조) 몇 가지 일반적인 함정이 있습니다.잘못된..

728x90
반응형