728x90
반응형

프로그래밍 언어/Python 318

하나를 수정하지 않고 파이썬에서 두 배열을 연결하는 방법

질문 : 하나를 수정하지 않고 파이썬에서 두 목록을 연결하는 방법은 무엇입니까? 파이썬에서 두 목록을 연결하는 유일한 방법은 첫 번째 목록을 수정하는 list.extend 인수를 수정하지 않고 결과를 반환하는 연결 함수가 있습니까? 답변 예 : list1 + list2 . list1 과 list2 의 연결 인 새로운 목록을 제공합니다. 출처 : https://stackoverflow.com/questions/4344017/how-can-i-get-the-concatenation-of-two-lists-in-python-without-modifying-either

Python 모듈의 모든 함수를 나열하는 방법

질문 : Python 모듈의 모든 함수를 나열하는 방법은 무엇입니까? 내 시스템에 Python 모듈이 설치되어 있으며 어떤 기능 / 클래스 / 메소드를 사용할 수 있는지 확인하고 싶습니다. 각각에 대해 help 기능을 호출하고 싶습니다. ClassName.methods 와 같은 작업을 수행하여 해당 클래스에서 사용할 수있는 모든 메서드 목록을 가져올 수 있습니다. 파이썬에 비슷한 것이 있습니까? 예. 다음과 같이 : from somemodule import foo print(foo.methods) # or whatever is the correct method to call 답변 inspect 모듈 사용 : from inspect import getmembers, isfunction from somemo..

Python에서 matplotlib를 사용하여 로그 축 플로팅

질문 : Python에서 matplotlib를 사용하여 로그 축 플로팅 matplotlib를 사용하여 하나의 로그 축으로 그래프를 플로팅하고 싶습니다. 문서를 읽었지만 구문을 알아낼 수 없습니다. 'scale=linear' 와 같은 단순한 것일 수도 있지만 제대로 이해하지 못하는 것 같습니다. 샘플 프로그램 : import pylab import matplotlib.pyplot as plt a = [pow(10, i) for i in range(10)] fig = plt.figure() ax = fig.add_subplot(2, 1, 1) line, = ax.plot(a, color='blue', lw=2) pylab.show() 답변 Axes.set_yscale 메서드를 사용할 수 있습니다. Axes ..

파이썬이 for 및 while 루프 뒤에 'else'를 사용하는 이유

질문 : 파이썬이 for 및 while 루프 뒤에 'else'를 사용하는 이유는 무엇입니까? 이 구조가 어떻게 작동하는지 이해합니다. for i in range(10): print(i) if i == 9: print("Too big - I'm giving up!") break; else: print("Completed successfully") else 가 여기 키워드로 사용되는지 이해하지 못합니다 for 블록이 완료되지 않은 경우에만 실행된다는 것을 제안하기 때문입니다. 어떻게 생각하든 내 두뇌는 for 문에서 else 블록으로 원활하게 진행할 수 없습니다. 나에게 continue 또는 continuewith 가 더 의미가있을 것입니다 (그리고 나는 그것을 읽는 것을 스스로 훈련 시키려고 노력하고 있습..

파이썬에서 현재 시간을 얻는 방법

질문 : 파이썬에서 현재 시간을 얻는 방법 현재 시간을 가져 오는 데 사용되는 모듈 / 방법은 무엇입니까? 답변 사용하다: >>> import datetime >>> datetime.datetime.now() datetime.datetime(2009, 1, 6, 15, 8, 24, 78915) >>> print(datetime.datetime.now()) 2009-01-06 15:08:24.789150 그리고 시간 : >>> datetime.datetime.now().time() datetime.time(15, 8, 24, 78915) >>> print(datetime.datetime.now().time()) 15:08:24.789150 자세한 내용 은 설명서 를 참조하십시오. 입력을 저장하기 위해 da..

Python array 항목 중에 다른 문자열 안에 문자열이 포함되어 있는지 확인

질문 : Python 목록 항목에 다른 문자열 안에 문자열이 포함되어 있는지 확인 목록이 있습니다. my_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456'] 'abc' 문자열을 포함하는 항목을 검색하려고합니다. 어떻게 할 수 있습니까? if 'abc' in my_list: 'abc' 가 목록에 있지만 'abc-123' 및 'abc-456' 의 일부인 경우 'abc' 가 자체적으로 존재하지 않는지 확인합니다. 'abc' 를 포함하는 모든 항목을 어떻게 얻을 수 있습니까? 답변 abc 가 있는지 만 확인하려면 다음을 시도하십시오. some_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456'] if any("abc" in s fo..

정수의 최대 값 및 최소값

질문 : 정수의 최대 값 및 최소값 파이썬에서 정수의 최소값과 최대 값을 찾고 있습니다. 예를 들어, Java에서는 Integer.MIN_VALUE 및 Integer.MAX_VALUE 있습니다. 파이썬에 이와 같은 것이 있습니까? 답변 Python 3에서는이 질문이 적용되지 않습니다. 일반 int 유형은 제한되지 않습니다. 그러나 실제로 현재 인터프리터의 단어 크기 에 대한 정보를 찾고있을 수 있습니다. 대부분의 경우 기계의 단어 크기와 동일합니다. 이 정보는 Python 3에서 sys.maxsize 로 여전히 사용할 수 있으며, 이는 부호있는 단어로 표현할 수있는 최대 값입니다. 마찬가지로 가능한 가장 큰 목록 또는 메모리 내 시퀀스 의 크기입니다. 일반적으로 부호없는 단어가 표현할 수있는 최대 값은 ..

파이썬의 'private' 메소드가 실제로 비공개가 아닌 이유

질문 : 파이썬의 '비공개'메소드가 실제로 비공개가 아닌 이유는 무엇입니까? __myPrivateMethod() 와 같이 이름 앞에 이중 밑줄을 추가하여 클래스 내에서 '개인'메서드와 변수를 생성 할 수있는 기능을 제공합니다. 그렇다면 이것을 어떻게 설명 할 수 있습니까? >>> class MyClass: ... def myPublicMethod(self): ... print 'public method' ... def __myPrivateMethod(self): ... print 'this is private!!' ... >>> obj = MyClass() >>> obj.myPublicMethod() public method >>> obj.__myPrivateMethod() Traceback (most ..

변수 및 함수 이름에 대한 Python의 명명 규칙

질문 : 변수 및 함수 이름에 대한 Python의 명명 규칙은 무엇입니까? C # 배경에서 비롯된 변수 및 메서드 이름의 명명 규칙은 일반적으로 camelCase 또는 PascalCase입니다. // C# example string thisIsMyVariable = "a" public void ThisIsMyMethod() 파이썬에서는 위의 내용을 보았지만 밑줄도 사용하는 것을 보았습니다. # python example this_is_my_variable = 'a' def this_is_my_function(): Python에 더 선호되고 명확한 코딩 스타일이 있습니까? 답변 Python PEP 8 : 함수 및 변수 이름을 참조하십시오. 함수 이름은 소문자 여야하며 가독성을 높이기 위해 단어를 밑줄로 구..

파이썬에서 문자열을 정수로 변환하는 방법

질문 : 파이썬에서 문자열을 정수로 변환하는 방법은 무엇입니까? 다음과 같은 MySQL 쿼리의 튜플이 있습니다. T1 = (('13', '17', '18', '21', '32'), ('07', '11', '13', '14', '28'), ('01', '05', '06', '08', '15', '16')) 모든 문자열 요소를 정수로 변환하고 목록 목록에 다시 넣고 싶습니다. T2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]] eval 그것을 달성하려고했지만 아직 괜찮은 결과를 얻지 못했습니다. 답변 int() 는 문자열을 정수 값으로 변환하는 Python 표준 내장 함수입니다. 인수로 숫자를 포함하는 문자열을 사용하여 호출하면 정수..

#! (shebang) Python 스크립트 형식

질문 : #! (shebang) Python 스크립트에서 어떤 형식을 취해야합니까? 파이썬 스크립트에 shebang을 넣어야합니까? 어떤 형태로? #!/usr/bin/env python 또는 #!/usr/local/bin/python 이것들은 똑같이 휴대 가능합니까? 어떤 형식이 가장 많이 사용됩니까? 참고 : 토네이도 프로젝트는 shebang을 사용합니다. 반면에 Django 프로젝트는 그렇지 않습니다. 답변 python 미리 입력하지 않고 또는 파일 관리자에서 두 번 클릭 할 때 (제대로 구성된 경우) 독립 실행 형 실행 파일처럼 스크립트가 실행되는 기능을 결정합니다. 필요하지는 않지만 일반적으로 거기에두기 때문에 누군가 편집기에서 열린 파일을 보면 즉시보고있는 것을 알 수 있습니다. 그러나, 당신이..

Python에서 "pip"로 psycopg2를 설치하는 방법

질문 : Python에서 "pip"로 psycopg2를 설치하는 방법은 무엇입니까? 저는 virtualenv 사용하고 있으며 "psycopg2"를 설치해야합니다. 다음을 수행했습니다. pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160 그리고 다음과 같은 메시지가 있습니다. Downloading/unpacking http://pypi.python.org/packages/source/p/psycopg2/psycopg2 -2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160 Downloading psycopg2-2.4..

Python : 딕셔너리가 비어 있는지 확인하는 방법

질문 : Python : '사전'이 비어 있는지 확인하는 것이 작동하지 않는 것 같습니다. 사전이 비어 있는지 확인하려고하는데 제대로 작동하지 않습니다. 그냥 건너 뛰고 메시지를 표시하는 것 외에는 아무것도없이 온라인으로 표시합니다. 이유는 무엇입니까? def isEmpty(self, dictionary): for element in dictionary: if element: return True return False def onMessage(self, socket, message): if self.isEmpty(self.users) == False: socket.send("Nobody is online, please use REGISTER command" \ " in order to register ..

파이썬 함수 정의에서 '->' 의 의미

질문 : 파이썬 함수 정의에서->는 무엇을 의미합니까? 최근 Python 3.3 문법 사양을 살펴보면서 흥미로운 사실을 발견했습니다. funcdef: 'def' NAME parameters ['->' test] ':' suite 선택적인 '화살표'블록은 Python 2에 없었고 Python 3에서 그 의미에 관한 정보를 찾을 수 없었습니다. 이것이 올바른 Python이며 인터프리터가 허용합니다. def f(x) -> 123: return x 나는 이것이 일종의 전제 조건 구문이라고 생각했지만 다음과 같습니다. x 는 아직 정의되지 않았기 때문에 여기서 테스트 할 수 없습니다. 화살표 뒤에 무엇을 입력하든 (예 : 2 < 1 ) 함수 동작에는 영향을주지 않습니다. 이 구문 스타일에 익숙한 사람이 설명 할 ..

파이썬에서 정수를 문자열로 변환

질문 : 파이썬에서 정수를 문자열로 변환 파이썬에서 정수를 문자열로 변환하고 싶습니다. 나는 그것을 헛되이 타입 캐스팅하고 있습니다. d = 15 d.str() 문자열로 변환하려고하면 int str 이라는 속성이없는 것과 같은 오류가 표시됩니다. 답변 >>> str(10) '10' >>> int('10') 10 문서 링크 : int() str() 문자열로의 변환은 기본적으로 매개 변수 __str__() str() 출처 : https://stackoverflow.com/questions/961632/converting-integer-to-string-in-python

Pandas에서 열 이름 바꾸기

질문 : Pandas에서 열 이름 바꾸기 원래 열 레이블을 바꾸기 위해 편집해야하는 Pandas 및 열 레이블을 사용하는 DataFrame이 있습니다. 원래 열 이름이 A 에서 열 이름을 변경하고 싶습니다. ['$a', '$b', '$c', '$d', '$e'] ...에 ['a', 'b', 'c', 'd', 'e']. 편집 한 열 이름을 목록에 저장했지만 열 이름을 바꾸는 방법을 모르겠습니다. 답변 .columns 속성에 할당하기 만하면됩니다. >>> df = pd.DataFrame({'$a':[1,2], '$b': [10,20]}) >>> df $a $b 0 1 10 1 2 20 >>> df.columns = ['a', 'b'] >>> df a b 0 1 10 1 2 20 출처 : https://sta..

파이썬의 람다에서 "if"를 수행하는 방법

질문 : 파이썬의 람다에서 "if"를 수행하는 방법이 있습니까? Python 2.6 에서는 다음을 수행하고 싶습니다. f = lambda x: if x==2 print x else raise Exception() f(2) #should print "2" f(3) #should throw an exception 이것은 분명히 구문이 아닙니다. 그것은을 수행 할 수 있습니다 if 에 lambda 그리고 만약 그것을 수행하는 방법, 그래서? 답변 찾고있는 구문 : lambda x: True if x % 2 == 0 else False print 사용하거나 람다로 raise 수 없습니다. 출처 : https://stackoverflow.com/questions/1585322/is-there-a-way-to-pe..

Python 반복 함수를 생성하는 방법

질문 : 기본 Python 반복기 빌드 파이썬에서 반복 함수 (또는 반복기 객체)를 어떻게 생성할까요? 답변 파이썬의 반복자 객체는 반복자 프로토콜을 __iter__() 및 __next__() 두 가지 메서드를 제공한다는 것을 의미합니다. __iter__ 는 반복기 객체를 반환하며 루프 시작시 암시 적으로 호출됩니다. __next__() 메서드는 다음 값을 반환하며 각 루프 증분에서 암시 적으로 호출됩니다. 이 메서드는 반환 할 값이 더 이상 없을 때 StopIteration 예외를 발생시킵니다.이 예외는 반복을 중지하기 위해 반복 구조를 통해 암시 적으로 캡처됩니다. 다음은 카운터의 간단한 예입니다. class Counter: def __init__(self, low, high): self.curren..

파이썬 클래스가 객체를 상속하는 이유

질문 : 파이썬 클래스는 왜 객체를 상속합니까? object 에서 상속하는 이유가 있습니까? 방금이 작업을 수행하는 코드를 찾았고 그 이유를 찾을 수 없습니다. class MyClass(object): # class code follows... 답변 Python 3에서는 Python 2와 3 간의 호환성을 제외하고는 이유가 없습니다 . Python 2에서는 여러 가지 이유가 있습니다. Python 2.x story: object 의 존재 여부에 따라 두 가지 스타일의 클래스가 있습니다. "클래식"스타일 클래스 : 기본 클래스로 object >>> class ClassicSpam: # no base class ... pass >>> ClassicSpam.__bases__ () "새로운"스타일 클래스 : 직..

파이썬에서 배열의 마지막 요소 가져오기

질문 : 목록의 마지막 요소 얻기 파이썬에서 목록의 마지막 요소를 어떻게 얻습니까? 답변 some_list[-1] 은 가장 짧고 가장 Pythonic입니다. 실제로이 구문으로 훨씬 더 많은 작업을 수행 할 수 있습니다. some_list[-n] 구문은 마지막에서 n 번째 요소를 가져옵니다. 따라서 some_list[-1] 은 마지막 요소를 가져오고 some_list[-2] 는 두 번째에서 마지막 요소를 가져 오는 등, 첫 번째 요소를 제공 some_list[-len(some_list)] 이 방법으로 목록 요소를 설정할 수도 있습니다. 예를 들면 : >>> some_list = [1, 2, 3] >>> some_list[-1] = 5 # Set the last element >>> some_list[-2]..

Python의 subprocess.PIPE에 대한 비 차단 읽기

질문 : Python의 subprocess.PIPE에 대한 비 차단 읽기 하위 프로세스 모듈 을 사용하여 하위 프로세스를 시작하고 해당 출력 스트림 (표준 출력)에 연결합니다. 표준 출력에서 비 차단 읽기를 실행할 수 있기를 원합니다. .readline 호출하기 전에 스트림에 데이터가 있는지 확인하는 방법이 있습니까? 나는 이것이 이식 가능하거나 적어도 Windows 및 Linux에서 작동하기를 바랍니다. 다음은 지금 수행하는 방법입니다 (사용 가능한 데이터가없는 경우 .readline p = subprocess.Popen('myprogram.exe', stdout = subprocess.PIPE) output_str = p.stdout.readline() 답변 fcntl , select , asyncp..

Python에서 HTTP GET을 수행하는 가장 빠른 방법

질문 : Python에서 HTTP GET을 수행하는 가장 빠른 방법은 무엇입니까? 콘텐츠가 문자열이라는 것을 알고 있다면 Python에서 HTTP GET을 수행하는 가장 빠른 방법은 무엇입니까? 다음과 같은 빠른 한 줄 문서를 검색하고 있습니다. contents = url.get("http://example.com/foo/bar") 그러나 Google을 사용하여 찾을 수있는 것은 httplib 와 urllib 해당 라이브러리에서 바로 가기를 찾을 수 없습니다. 표준 Python 2.5에는 위와 같은 형식의 바로 가기가 있습니까? url_get 답변 파이썬 3 : import urllib.request contents = urllib.request.urlopen("http://example.com/foo/..

파이썬 딕셔너리 컴프리헨션

질문 : 파이썬 사전 이해 파이썬에서 (키에 대해) 딕셔너리 컴프리헨션을 만들 수 있습니까? 딕셔너리 컴프리헨션 없이 다음과 같이 사용할 수 있습니다. l = [] for n in range(1, 11): l.append(n) 이것을 리스트 컴프리헨션으로 줄일 수 있습니다 : l = [n for n in range(1, 11)] . 그러나 사전의 키를 동일한 값으로 설정하고 싶다고 가정 해보십시오. 내가 할 수있는: d = {} for n in range(1, 11): d[n] = True # same value for each 나는 이것을 시도했다 : d = {} d[i for i in range(1, 11)] = True 그러나 for SyntaxError 가 발생합니다. 또한 (이 부분은 필요하지 ..

Python에서 exit ()와 sys.exit ()의 차이점

질문 : Python에서 exit ()와 sys.exit ()의 차이점 Python에는 비슷한 이름의 두 함수, exit() 및 sys.exit() 있습니다. 차이점은 무엇이며 언제 다른 것을 사용해야합니까? 답변 exit 는 대화 형 셸을위한 도우미입니다. sys.exit 는 프로그램에서 사용하기위한 것입니다. site -S 명령 줄 옵션이 제공되는 경우를 제외하고 시작하는 동안 자동으로 가져옴)은 내장 네임 스페이스에 여러 상수를 추가합니다 (예 : exit ) . 대화 형 인터프리터 쉘에 유용하며 프로그램에서 사용해서는 안됩니다 . 기술적으로는 거의 동일합니다 : SystemExit 시킵니다. sys.exit 는 sysmodule.c에서 그렇게합니다 . static PyObject * sys_exi..

Python 딕셔너리에서 키를 제거하는 방법

질문 : Python 사전에서 키를 제거하려면 어떻게해야합니까? 사전에서 키를 삭제할 때 다음을 사용합니다. if 'key' in my_dict: del my_dict['key'] 이 작업을 수행하는 한 줄 방법이 있습니까? 답변 사전에 있는지 여부에 관계없이 키를 삭제하려면 dict.pop() 의 두 인수 형식을 사용하십시오. my_dict.pop('key', None) key 가 사전에 있으면 my_dict[key] 반환 None 반환합니다. 두 번째 매개 변수가 지정되지 않았고 (예 : my_dict.pop('key') ) key 가 존재하지 않으면 KeyError 가 발생합니다. 존재가 보장 된 키를 삭제하려면 다음을 사용할 수도 있습니다. del my_dict['key'] 키가 사전에 없으면 K..

728x90
반응형