728x90
반응형

프로그래밍 언어/Python 318

pip를 사용하여 Python 패키지를 다른 디렉토리에 설치 하는 방법

질문 : pip를 사용하여 Python 패키지를 다른 디렉토리에 설치 하시겠습니까? 확실한 대답은 virtualenv 및 virtualenvwrapper를 사용하는 것임을 알고 있지만 여러 가지 이유로 그렇게 할 수 없거나 원하지 않습니다. 그래서 어떻게 명령을 수정합니까 pip install package_name pip site-packages 패키지가 아닌 다른 곳에 패키지를 설치하도록하려면? 답변 사용하다: pip install --install-option="--prefix=$PREFIX_PATH" package_name --ignore-installed 를 사용하여이 새 접두사를 사용하여 모든 종속성을 강제로 다시 설치할 수도 있습니다. --install-option python setup.p..

SQLAlchemy : flush ()와 commit ()의 차이점

질문 : SQLAlchemy : flush ()와 commit ()의 차이점은 무엇입니까? SQLAlchemy에서 flush() 와 commit() 의 차이점은 무엇입니까? 나는 문서를 읽었지만 현명한 사람은 아닙니다. 그들은 내가 가지고 있지 않은 사전 이해를 가정하는 것 같습니다. 특히 메모리 사용에 미치는 영향에 관심이 있습니다. 일련의 파일 (총 약 5 백만 행)에서 일부 데이터를 데이터베이스로로드하는 중이며 세션이 때때로 실패합니다. 이것은 대용량 데이터베이스이고 메모리가 많지 않은 시스템입니다. commit() 하고 있고 충분한 flush() 호출을 사용하고 있는지 궁금합니다. 그러나 차이점이 무엇인지 실제로 이해하지 않으면 말하기가 어렵습니다! 답변 세션 객체는 기본적으로 데이터베이스 변경 ..

Python에서 파일 객체의 크기를 바이트 단위로 가져 오는 내장 함수

질문 : Python에서 파일 크기를 얻습니까? 파일 객체의 크기를 바이트 단위로 가져 오는 내장 함수가 있습니까? 나는 어떤 사람들이 다음과 같이하는 것을 본다. def getSize(fileobject): fileobject.seek(0,2) # move the cursor to the end of the file size = fileobject.tell() return size file = open('myfile.bin', 'rb') print getSize(file) 그러나 Python에 대한 경험상 많은 도우미 함수가 있으므로 아마도 하나의 내장 기능이 있다고 생각합니다. 답변 os.path.getsize(path) 를 사용하면 path 의 크기 (바이트)를 반환합니다. 파일이 없거나 액세스 할..

Python 코드가 함수에서 더 빠르게 실행되는 이유

질문 : Python 코드가 함수에서 더 빠르게 실행되는 이유는 무엇입니까? def main(): for i in xrange(10**8): pass main() Python의이 코드는 다음에서 실행됩니다 (참고 : 타이밍은 Linux의 BASH에서 시간 함수로 수행됩니다.) real 0m1.841s user 0m1.828s sys 0m0.012s 그러나 for 루프가 함수 내에 위치하지 않으면 for i in xrange(10**8): pass 그런 다음 훨씬 더 오랜 시간 동안 실행됩니다. real 0m4.543s user 0m4.524s sys 0m0.012s 왜 이런거야? 답변 전역 변수보다 지역 변수를 저장하는 것이 더 빠른 이유를 물을 수 있습니다. 이것은 CPython 구현 세부 사항입니다...

파이썬 디렉토리의 모든 파일을 나열하는 방법

질문 : 디렉토리의 모든 파일을 어떻게 나열합니까? 파이썬에서 디렉토리의 모든 파일을 list 추가하려면 어떻게해야합니까? 답변 os.listdir() 은 디렉토리에있는 모든 것을 얻을 것입니다- 파일 과 디렉토리 . 파일 만 원하는 경우 os.path 사용하여 필터링 할 수 있습니다. from os import listdir from os.path import isfile, join onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))] 또는 os.walk() 를 사용하여 방문하는 각 디렉토리에 대해 두 개의 목록 을 생성 할 수 있습니다. 파일 과 디렉토리로 분할합니다. 최상위 디렉토리 만 원하면 처음으로 생성 할 때 중단 할 수 있습..

requirements.txt에 직접 github 소스를 명시하는 방법

질문 : requirements.txt에 직접 github 소스를 명시하는 방법 명령을 사용하여 라이브러리를 설치했습니다. pip install git+git://github.com/mozilla/elasticutils.git Github 저장소에서 직접 설치합니다. requirements.txt 해당 종속성을 갖고 싶습니다. 내가 좋아하는 다른 티켓을 검토 한 결과 이 있지만 그건 내 문제가 해결되지 않았다. 내가 뭔가를 넣으면 -f git+git://github.com/mozilla/elasticutils.git elasticutils==0.7.dev requirements.txt 파일에서 pip install -r requirements.txt 결과는 다음과 같습니다. Downloading/unpa..

Python setup.py가 Travis CI에서 잘못된 명령 'bdist_wheel'을 말하는 이유

질문 : Python setup.py가 Travis CI에서 잘못된 명령 'bdist_wheel'을 말하는 이유는 무엇입니까? 내 Python 패키지에는 다음과 같이 프로비저닝 할 때 Ubuntu Trusty 및 신선한 Vagrant Ubuntu Trusty VM에서 로컬로 잘 빌드 setup.py sudo apt-get install python python-dev --force-yes --assume-yes --fix-broken curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo python2.7 sudo -H pip install setuptools wheel virtualenv --upgrade 하지만 ..

Python에서 증감연산자를 사용하는 방법

질문 : Python에서 증가 및 감소 연산자의 동작 사전 증가 / 감소 연산자를 변수 (예 : ++count )에 적용 할 수 있습니다. 컴파일되지만 실제로 변수의 값을 변경하지는 않습니다! 파이썬에서 사전 증가 / 감소 연산자 (++ /-)의 동작은 무엇입니까? Python이 C / C ++에서 볼 수있는 이러한 연산자의 동작과 다른 이유는 무엇입니까? 답변 ++ 는 연산자가 아닙니다. 두 개의 + 연산자입니다. + 연산자는 아무 일도하지 않는 ID 연산자입니다. (설명 : + 및 - 단항 연산자는 숫자에서만 작동하지만 가상의 ++ 연산자가 문자열에서 작동하지 않을 것이라고 가정합니다.) ++count 다음과 같이 구문 분석 +(+count) 어떤 의미로 count 원하는 작업을 수행하려면 약간 더 ..

Python에서 C / C ++ 호출

질문 : Python에서 C / C ++ 호출? C 또는 C ++ 라이브러리에 대한 Python 바인딩을 구성하는 가장 빠른 방법은 무엇입니까? (중요한 경우 Windows를 사용하고 있습니다.) 답변 Boost.Python을 봐야합니다. 다음은 웹 사이트에서 가져온 짧은 소개입니다. Boost Python Library는 Python과 C ++를 연결하기위한 프레임 워크입니다. 이를 통해 특수 도구없이 C ++ 컴파일러 만 사용하여 C ++ 클래스 함수 및 객체를 Python에 빠르고 원활하게 노출 할 수 있습니다. C ++ 인터페이스를 비 간섭 적으로 래핑하도록 설계되었으므로 래핑하기 위해 C ++ 코드를 전혀 변경하지 않아도되므로 Boost.Python은 타사 라이브러리를 Python에 노출하는 데..

dict.copy () 이해- shallow or deep?

질문 : dict.copy () 이해-얕거나 깊습니까? dict.copy() 대한 문서를 읽는 동안 사전의 얕은 사본을 만든다고합니다. 내가 따르는 책 (Beazley의 Python Reference)도 마찬가지입니다. m.copy () 메서드는 매핑 개체에 포함 된 항목의 얕은 복사본을 만들고 새 매핑 개체에 배치합니다. 이걸 고려하세요: >>> original = dict(a=1, b=2) >>> new = original.copy() >>> new.update({'c': 3}) >>> original {'a': 1, 'b': 2} >>> new {'a': 1, 'c': 3, 'b': 2} original 의 값을 업데이트 할 것이라고 가정했습니다 (그리고 'c': 3 추가). 목록을 위해 수행하는 ..

파이썬에서 오늘 날짜를 YYYY-MM-DD 형태로 얻는 방법

질문 : 파이썬에서 오늘 날짜를 YYYY-MM-DD로 받고 있습니까? 나는 사용하고있다 : str(datetime.datetime.today()).split()[0] 오늘 날짜를 YYYY-MM-DD 형식으로 반환합니다. 이것을 달성하는 덜 조잡한 방법이 있습니까? 답변 strftime 을 사용할 수 있습니다. >>> from datetime import datetime >>> datetime.today().strftime('%Y-%m-%d') '2021-01-26' 또한 마지막에 제로 패딩 된시, 분 및 초를 찾는 사람을 위해 : ( Gabriel Staples의 의견) >>> datetime.today().strftime('%Y-%m-%d-%H:%M:%S') '2021-01-26-16:50:03' 출처..

Python에서 dictionary의 임의 요소 액세스

질문 : Python에서 사전의 임의 요소에 액세스 mydict 가 비어 있지 않으면 다음과 같이 임의의 요소에 액세스합니다. mydict[mydict.keys()[0]] 이 작업을 수행하는 더 좋은 방법이 있습니까? 답변 Python 3에서 비파괴 및 반복 : next(iter(mydict.values())) Python 2에서 비파괴적이고 반복적으로 : mydict.itervalues().next() Python 2와 3 모두에서 작동하도록하려면 six 패키지를 사용할 수 있습니다. six.next(six.itervalues(mydict)) 이 시점에서 그것은 매우 비밀스럽고 차라리 귀하의 코드를 선호합니다. 항목을 제거하려면 다음을 수행하십시오. key, value = mydict.popitem()..

OrderedDict에 JSON을 로드 하는 방법

질문 : OrderedDict에 JSON을로드 할 수 있습니까? json.dump 에서 OrderedDict를 사용할 수 있습니다. 즉, OrderedDict를 JSON에 대한 입력으로 사용할 수 있습니다. 그러나 출력으로 사용할 수 있습니까? 그렇다면 어떻게? 제 경우에는 파일의 키 순서를 유지할 수 있도록 OrderedDict load 그렇지 않은 경우 해결 방법이 있습니까? 답변 그래 넌 할수있어. JSONDecoder에 object_pairs_hook 인수를 지정합니다. 실제로 이것은 문서에 제공된 정확한 예입니다. >>> json.JSONDecoder(object_pairs_hook=collections.OrderedDict).decode('{"foo":1, "bar": 2}') OrderedD..

파이썬에서 작은 따옴표와 큰 따옴표 비교

질문 : 파이썬에서 작은 따옴표와 큰 따옴표 비교 [닫힌] 문서에 따르면 거의 상호 교환이 가능합니다. 다른 하나를 사용하는 문체적인 이유가 있습니까? 답변 보간에 사용되거나 자연어 메시지 인 문자열 주위에 큰 따옴표를 사용하고 작은 기호와 같은 문자열에는 작은 따옴표를 사용하지만 문자열에 따옴표가 포함되어 있거나 잊어 버린 경우 규칙을 위반합니다. 독 스트링에는 삼중 큰 따옴표를 사용하고 필요하지 않은 경우에도 정규식에는 원시 문자열 리터럴을 사용합니다. 예를 들면 : LIGHT_MESSAGES = { 'English': "There are %(number_of_lights)s lights.", 'Pirate': "Arr! Thar be %(number_of_lights)s lights." } def ..

Python에서 목록을 균등 한 크기의 청크로 반복하는 방법

질문 : 청크 단위로 목록을 반복하는 가장 "파이썬"방법은 무엇입니까? 한 번에 4 개의 정수로 작업해야하는 정수 목록을 입력으로받는 Python 스크립트가 있습니다. 불행히도 입력을 제어 할 수 없거나 4 개 요소 튜플 목록으로 전달했습니다. 현재 저는 다음과 같이 반복하고 있습니다. for i in range(0, len(ints), 4): # dummy op for example code foo += ints[i] * ints[i + 1] + ints[i + 2] * ints[i + 3] "C-think"와 비슷해 보이지만,이 상황을 처리하는 더 비단뱀적인 방법이 있다고 생각합니다. 목록은 반복 후 삭제되므로 보존 할 필요가 없습니다. 아마도 이와 같은 것이 더 좋을까요? while ints: fo..

Python 모듈 datetime을 사용하여 현재 날짜로부터 6 개월의 날짜를 계산하는 방법

질문 : datetime Python 모듈을 사용하여 현재 날짜로부터 6 개월의 날짜를 어떻게 계산합니까? datetime Python 모듈을 사용하고 있습니다. 현재 날짜로부터 6 개월 후 날짜를 계산하려고합니다. 누군가이 일을 도와 줄 수 있습니까? 현재 날짜로부터 6 개월 후 날짜를 생성하고 싶은 이유는 리뷰 날짜 를 생성하기 위해서입니다. 사용자가 시스템에 데이터를 입력하면 데이터를 입력 한 날로부터 6 개월의 검토 날짜가 있습니다. 답변 이 솔루션이 좋은 것으로 나타났습니다. (이것은 python-dateutil 확장을 사용합니다) from datetime import date from dateutil.relativedelta import relativedelta six_months = date..

내 Python 사이트 패키지 디렉토리의 위치를 찾는 방법

질문 : 내 Python 사이트 패키지 디렉토리의 위치를 어떻게 찾습니까? 내 사이트 패키지 디렉토리의 위치를 어떻게 찾습니까? 답변 사이트 패키지 디렉토리에는 전역 및 사용자 당 두 가지 유형이 있습니다. 다음을 실행할 때 전역 사이트 패키지 ( " dist-packages ") 디렉토리가 sys.path python -m site 더 간결한 목록을 보려면 Python 코드의 사이트 모듈 getsitepackages python -c 'import site; print(site.getsitepackages())' 참고 : virtualenvs getsitepackages is not available을 사용 하면 sys.path 가 virtualenv의 site-packages 디렉토리를 올바르게 나열..

Python에서 여러 생성자를 갖는 깔끔하고 Pythonic 방법

질문 : Python에서 여러 생성자를 갖는 깔끔하고 Pythonic 방법은 무엇입니까? 이것에 대한 확실한 답을 찾을 수 없습니다. 내가 아는 한, 파이썬 클래스에서 __init__ 그렇다면이 문제를 어떻게 해결해야합니까? number_of_holes 속성이있는 Cheese 라는 클래스가 있다고 가정합니다. 치즈 오브젝트를 만드는 두 가지 방법을 어떻게 가질 수 있습니까? 이 작업을 수행하는 한 가지 방법 만 생각할 수 있지만 이것은 투박해 보입니다. class Cheese(): def __init__(self, num_holes = 0): if (num_holes == 0): # Randomize number_of_holes else: number_of_holes = num_holes 당신은 무엇을 ..

파이썬 인터프리터의 전체 경로를 찾는 방법

질문 : 파이썬 인터프리터의 전체 경로를 찾으십니까? 현재 실행중인 Python 스크립트 내에서 현재 실행중인 Python 인터프리터의 전체 경로를 찾으려면 어떻게해야합니까? 답변 sys.executable 에는 현재 실행중인 Python 인터프리터의 전체 경로가 포함됩니다. import sys print(sys.executable) 지금 여기에 설명되어 있습니다. 출처 : https://stackoverflow.com/questions/2589711/find-full-path-of-the-python-interpreter

Python에서 문자열 Reverse

질문 : Python에서 문자열 반전 파이썬의 str 객체에 대해 내장 된 reverse 이 방법을 구현하는 가장 좋은 방법은 무엇입니까? 매우 간결한 답변을 제공하는 경우 효율성에 대해 자세히 설명하십시오. 예를 들어, str 객체가 다른 객체로 변환되었는지 여부 등입니다. 답변 어때 : >>> 'hello world'[::-1] 'dlrow olleh' 이것은 확장 된 슬라이스 구문입니다. [begin:end:step] 을 수행하여 작동합니다.-begin과 end를 끄고 단계를 -1로 지정하면 문자열이 반전됩니다. 출처 : https://stackoverflow.com/questions/931092/reverse-a-string-in-python

Windows에 pip를 설치하는 방법

질문 : Windows에 pip를 어떻게 설치할 수 있습니까? pip easy_install 대체합니다. 하지만 Windows에서 easy_install 을 사용 pip 를 설치해야합니까? 더 좋은 방법이 있습니까? 답변 좋은 소식! Python 3.4 (2014 년 3 월 출시) 및 Python 2.7.9 (2014 년 12 월 출시)는 Pip과 함께 제공됩니다. 이것은 모든 Python 릴리스의 가장 좋은 기능입니다. 모든 사람이 커뮤니티의 풍부한 라이브러리에 액세스 할 수 있도록합니다. 초보자는 설치의 엄청난 어려움 때문에 더 이상 커뮤니티 라이브러리 사용에서 제외되지 않습니다. 패키지 관리자와 함께 제공 할 때 Python은 Ruby , Node.js , Haskell , Perl , Go에 합류..

Python 변수가 함수인지 확인하는 방법

질문 : 파이썬 변수가 함수인지 어떻게 감지합니까? 변수 x 가 있고 그것이 함수를 가리키는 지 여부를 알고 싶습니다. 다음과 같이 할 수 있기를 바랐습니다. >>> isinstance(x, function) 그러나 그것은 나에게 준다. Traceback (most recent call last): File "", line 1, in ? NameError: name 'function' is not defined 내가 선택한 이유는 >>> type(x) 답변 Python 2.x 또는 Python 3.2 이상인 경우 callable() 사용할 수 있습니다. 이전에는 더 이상 사용되지 않았지만 이제는 더 이상 사용되지 않으므로 다시 사용할 수 있습니다. 여기에서 토론을 읽을 수 있습니다 : http://bug..

조건식을 기반으로 pandas DataFrame에서 행을 삭제하는 방법

질문 : 조건식을 기반으로 pandas DataFrame에서 행을 삭제하는 방법 pandas DataFrame이 있고 특정 열의 문자열 길이가 2보다 큰 행을 삭제하고 싶습니다. 나는 이것을 할 수 있기를 기대합니다 ( 이 답변에 따라 ) : df[(len(df['column name']) < 2)] 하지만 오류가 발생합니다. KeyError: u'no item named False' 내가 도대체 뭘 잘못하고있는 겁니까? df.dropna() NaN 이 포함 된 행을 제거 할 수 있다는 것을 알고 있지만 조건식을 기반으로 행을 제거하는 방법을 보지 못했습니다.) 답변 len(df['column name']) 하면 하나의 숫자, 즉 DataFrame의 행 수 (즉, 열 자체의 길이)를 얻게됩니다. 열의 각..

Python 3.x에서 목록을 반환할 map() 가져오기

질문 : Python 3.x에서 목록을 반환하기 위해 map () 가져 오기 목록을 16 진수로 매핑 한 다음 다른 곳에서 목록을 사용하려고합니다. 파이썬 2.6에서는 간단했습니다. A : Python 2.6 : >>> map(chr, [66, 53, 0, 94]) ['B', '5', '\x00', '^'] 그러나 Python 3.1에서는 위의 내용이지도 객체를 반환합니다. B : Python 3.1 : >>> map(chr, [66, 53, 0, 94]) Python 3.x에서 매핑 된 목록 ( 위의 A 에서와 같이)을 검색하려면 어떻게해야합니까? 또는 더 나은 방법이 있습니까? 내 초기 목록 개체에는 약 45 개의 항목이 있으며 ID를 16 진수로 변환하고 싶습니다. 답변 이 작업을 수행: list(..

Python에서 날짜를 datetime으로 변환

질문 : Python에서 날짜를 datetime으로 변환 date 를 datetime 으로 변환하는 내장 메서드가 있습니까? 예를 들어 주어진 날짜의 자정에 대한 datetime 반대 변환은 쉽습니다. datetime 에는 .date() 메서드가 있습니다. 수동으로 datetime(d.year, d.month, d.day) 호출해야합니까? 답변 datetime.combine(date, time) 사용할 수 있습니다. 당분간 자정으로 초기화 datetime.time 객체를 생성합니다. from datetime import date from datetime import datetime dt = datetime.combine(date.today(), datetime.min.time()) 출처 : https:/..

728x90
반응형