개발/Python 199

파이썬 POST 바이너리 데이터

redmine과 인터페이스하기 위해 코드를 작성 중이며 프로세스의 일부로 일부 파일을 업로드해야하지만 바이너리 파일이 포함 된 Python에서 POST 요청을 수행하는 방법을 모르겠습니다. 나는 명령을 모방하려고here: curl --data-binary "@image.png" -H "Content-Type: application/octet-stream" -X POST -u login:password http://redmine/uploads.xml 파이썬에서 (아래), 작동하지 않는 것 같습니다. 문제가 파일 인코딩과 관련이 있는지 또는 헤더에 문제가 있는지 확실하지 않습니다. import urllib2, os FilePath = "C:\somefolder\somefile.7z" FileData = op..

개발/Python 2021.04.21

Python에서 set를 복제하거나 복사하는 방법은 무엇입니까?

목록 복사 :shallow_copy_of_list = old_list[:]. dict 복사 :shallow_copy_of_dict = dict(old_dict). 하지만set, 비슷한 일이 안될 까봐 걱정 했어요.new_set = set(old_set)세트를 줄까요? 하지만 작동합니다. 그래서 나는 여기에 참고를 위해 질문과 답변을 게시하고 있습니다. 다른 사람이 같은 혼란을 겪을 경우. 이 두 가지 모두 세트의 복제본을 제공합니다. shallow_copy_of_set = set(old_set) 또는: shallow_copy_of_set = old_set.copy() #Which is more readable. 위의 첫 번째 방법이하지 않는다세트를 제공하면 적절한 구문이set([old_set]). 작동하..

개발/Python 2021.04.21

[파이썬] 데코레이터를 사용하여 변수를 범위에 삽입하는 방법은 무엇입니까?

[면책 조항 : 내가하고 싶은 일을하는 더 비단뱀적인 방법이있을 수 있지만, 여기서 파이썬의 범위 지정이 어떻게 작동하는지 알고 싶습니다.] 다른 함수의 범위에 이름을 삽입하는 것과 같은 작업을 수행하는 데코레이터를 만드는 방법을 찾으려고합니다 (예 : 이름이 데코레이터의 범위를 벗어나지 않도록합니다). 예를 들어, 이름이 지정된 변수를 인쇄하라는 함수가있는 경우var정의되지 않은 경우 호출되는 데코레이터 내에서 정의하고 싶습니다. 다음은 중단되는 예입니다. c = 'Message' def decorator_factory(value): def msg_decorator(f): def inner_dec(*args, **kwargs): var = value res = f(*args, **kwargs) retu..

개발/Python 2021.04.21

Python3의 BaseHTTPServer 또는 http.server

BaseHTTPServer 프로그램을 만들려고합니다. 저는 Python 3.3 또는 3.2를 선호합니다. 가져올 내용과 관련하여 문서를 이해하기 어렵지만 가져 오기를 다음에서 변경해 보았습니다. from BaseHTTPServer import BaseHTTPRequestHandler,HTTPServer 에: from http.server import BaseHTTPRequestHandler,HTTPServer 그런 다음 가져 오기가 작동하고 프로그램이 시작되고 GET 요청을 기다립니다. 그러나 요청이 도착하면 예외가 발생합니다. File "C:\Python33\lib\socket.py", line 317, in write return self._sock.send(b) TypeError: 'str' doe..

개발/Python 2021.04.21

파이썬 문자열이 변경 불가능한 이유는 무엇입니까?

파이썬 문자열을 불변으로 만드는 디자인 이유는 무엇입니까? 프로그래밍을 더 쉽게 만드는 방법은 무엇입니까? 나는 C에있는 것과 같은 변경 가능한 문자열에 익숙합니다. 변경 가능한 문자열없이 프로그래밍하려면 어떻게해야합니까? 모범 사례가 있습니까? 문자열을 받으면 그대로 유지됩니다. 당신이Foo아래와 같이 문자열 인수를 사용하여 문자열을 수정합니다. 다음Foo의 이름이 갑자기 변경됩니다. class Foo(object): def __init__(self, name): self.name = name name = "Hello" foo = Foo(name) name[0] = "J" 변경 가능한 문자열을 사용하면 나쁜 일이 발생하지 않도록 항상 복사본을 만들어야합니다. 또한 단일 문자가 길이가 1 인 문자열과 다..

개발/Python 2021.04.21

Python에서 소수점 세 자리로 자르기

1324343032.324는 어떻게 받습니까? 아래에서 볼 수 있듯이 다음은 작동하지 않습니다. >>1324343032.324325235 * 1000 / 1000 1324343032.3243253 >>int(1324343032.324325235 * 1000) / 1000.0 1324343032.3239999 >>round(int(1324343032.324325235 * 1000) / 1000.0,3) 1324343032.3239999 >>str(1324343032.3239999) '1324343032.32' 추가로 사용할 수 있습니다.float()당신이 그것을 보존하고 싶다면 주위에float. %.3f'%(1324343032.324325235) 다음 함수를 사용하여 숫자를 설정된 소수 자릿수로자를 수 있..

개발/Python 2021.04.20

Python 함수 포인터

다음과 같은 변수에 저장된 함수 이름이 있습니다. myvar = 'mypackage.mymodule.myfunction' 이제 이렇게 myfunction을 호출하고 싶습니다. myvar(parameter1, parameter2) 이것을 달성하는 가장 쉬운 방법은 무엇입니까? funcdict = { 'mypackage.mymodule.myfunction': mypackage.mymodule.myfunction, .... } funcdict[myvar](parameter1, parameter2) 파이썬에서 일류 객체이기 때문에 함수 자체를 저장할 수있는 것이 훨씬 더 좋습니다. import mypackage myfunc = mypackage.mymodule.myfunction myfunc(parameter1..

개발/Python 2021.04.20

[파이썬] crontab에 대해 virtualenv를 설정하는 방법은 무엇입니까?

Python 스크립트를 실행하기 위해 crontab을 설정하고 싶습니다. 스크립트는 다음과 같습니다. #!/usr/bin/python print "hello world" 해당 Python 스크립트를 실행할 virtualenv를 지정할 수있는 방법이 있습니까? 셸에서는 다음을 수행합니다. ~$ workon myenv crontab에서 virtualenv를 활성화하기 위해 할 수있는 것과 동등한 것이 있습니까? "workon"을 사용하는 경우 실제로 virtualenv 위에있는 또 다른 추상화 계층 인 "virtualenv wrapper"를 사용하고 있습니다. virtualenv는 virtualenv 루트 디렉토리로 cd'ing하고 다음을 실행하여 활성화 할 수 있습니다. source bin/acti..

개발/Python 2021.04.20
728x90