반응형

파이썬 56

[python] 함수 데코레이터를 만들고 함께 연결하려면 어떻게 해야 합니까?

다음을 수행하는 두 개의 데코레이터를 Python에서 어떻게 만들 수 있습니까? @make_bold @make_italic def say(): return "Hello" 호출 say()은 다음을 반환해야 합니다. "Hello" 긴 설명이 필요하지 않은 경우 Paolo Bergantino의 답변 을 참조하십시오 . 데코레이터 기본 파이썬의 함수는 객체다 데코레이터를 이해하려면 먼저 함수가 파이썬에서 객체라는 것을 이해해야 합니다. 이것은 중요한 결과를 낳습니다. 간단한 예를 들어 그 이유를 살펴보겠습니다. def shout(word="yes"): return word.capitalize()+"!" print(shout()) # outputs : 'Yes!' # As an object, you can ass..

파이썬 2022.08.22

[python] **(이중 별표/별표) 및 *(별표/별표)는 매개변수에 대해 무엇을 합니까?

무엇 *args을 **kwargs의미합니까? def foo(x, y, *args): def bar(x, y, **kwargs): *argsand 는 파이썬 문서의 함수 정의**kwargs 에 대한 섹션에서 설명한 대로 함수에 임의의 수의 인수를 허용하는 일반적인 관용구 입니다. *args모든 함수 매개변수 를 튜플로 제공 합니다 . def foo(*args): for a in args: print(a) foo(1) # 1 foo(1,2,3) # 1 # 2 # 3 사전으로 형식 매개변수에 해당 하는 것을 제외한 **kwargs모든 키워드 인수 를 제공합니다. def bar(**kwargs): for a in kwargs: print(a, kwargs[a]) bar(name='one', age=27) # n..

파이썬 2022.08.22

[python] 시간 지연은 어떻게 합니까? [복제하다]

이 질문에는 이미 답변이 있습니다 . 프로그램을 50밀리초 동안 절전 모드로 전환하려면 어떻게 해야 합니까? (6 답변) 폐쇄 2 년 전 . Python 스크립트에 시간 지연을 어떻게 넣습니까? 2.5초 동안 지연됩니다. import time time.sleep(2.5) 다음은 약 1분에 한 번 실행되는 또 다른 예입니다. import time while True: print("This prints once a minute.") time.sleep(60) # Delay for 1 minute (60 seconds). 모듈 sleep()에서 사용 합니다. time1초 미만의 해상도를 위해 float 인수를 사용할 수 있습니다. from time import sleep sleep(0.1) # Time in ..

파이썬 2022.08.22

[python] 열 값을 기반으로 DataFrame에서 행을 어떻게 선택합니까?

DataFramePandas의 일부 열에 있는 값을 기반으로 행을 선택하려면 어떻게 해야 합니까? SQL에서는 다음을 사용합니다. SELECT * FROM table WHERE column_name = some_value 열 값이 스칼라 인 행을 선택하려면 다음 some_value을 사용 ==하십시오. df.loc[df['column_name'] == some_value] 열 값이 iterable에 있는 행을 선택하려면 다음 some_values을 사용 isin하십시오. df.loc[df['column_name'].isin(some_values)] 여러 조건을 다음과 결합 &: df.loc[(df['column_name'] >= A) & (df['column_name'] = A & df['column_n..

파이썬 2022.08.22

[python] 할당 후 예기치 않게 변경되지 않도록 목록을 복제하려면 어떻게 해야 합니까?

를 사용하는 동안 new_list = my_list모든 수정 사항은 매번 new_list변경 됩니다. my_list그 이유는 무엇이며 목록을 복제하거나 복사하여 이를 방지하려면 어떻게 해야 합니까? new_list = my_list실제로 두 번째 목록을 생성하지 않습니다. 할당은 실제 목록이 아닌 목록에 대한 참조를 복사하므로 둘 다 할당 후 동일한 목록을 참조합니다 new_list.my_list 실제로 목록을 복사하려면 다음과 같은 몇 가지 옵션이 있습니다. 내장 list.copy()메서드를 사용할 수 있습니다(Python 3.3부터 사용 가능): new_list = old_list.copy() 다음과 같이 슬라이스할 수 있습니다. new_list = old_list[:] 이것에 대한 Alex Mart..

파이썬 2022.08.22

[python] Python의 목록 메서드 추가와 확장의 차이점은 무엇입니까?

append()목록 방법 과 의 차이점은 무엇입니까 extend()? append목록 끝에 지정된 객체를 추가합니다. >>> x = [1, 2, 3] >>> x.append([4, 5]) >>> print(x) [1, 2, 3, [4, 5]] extend지정된 iterable에서 요소를 추가하여 목록을 확장합니다. >>> x = [1, 2, 3] >>> x.extend([4, 5]) >>> print(x) [1, 2, 3, 4, 5] append목록에 요소를 추가합니다. extend첫 번째 목록을 다른 목록/반복 가능 항목과 연결합니다. >>> xs = ['A', 'B'] >>> xs ['A', 'B'] >>> xs.append("D") >>> xs ['A', 'B', 'D'] >>> xs.append(..

파이썬 2022.08.22

[python] 참조로 변수를 전달하려면 어떻게 해야 합니까?

매개변수가 참조로 전달됩니까 아니면 값으로 전달됩니까? 'Changed'대신 아래 코드가 출력되도록 참조로 전달하려면 어떻게 해야 'Original'합니까? class PassByReference: def __init__(self): self.variable = 'Original' self.change(self.variable) print(self.variable) def change(self, var): var = 'Changed' 인수는 할당에 의해 전달됩니다 . 이에 대한 근거는 두 가지입니다. 전달된 매개변수는 실제로 객체에 대한 참조 입니다(그러나 참조는 값으로 전달됨) 일부 데이터 유형은 변경 가능하지만 다른 데이터 유형은 변경 가능하지 않습니다. 그래서: 변경 가능한 객체를 메소드에 전달 하..

파이썬 2022.08.21

[python] "최소한의 놀라움"과 변경 가능한 기본 인수

Python을 오랫동안 만지작거리는 사람은 다음 문제에 물린(또는 조각난) 사람입니다. def foo(a=[]): a.append(5) return a Python 초보자는 매개변수 없이 호출된 이 함수가 항상 하나의 요소만 있는 목록을 반환할 것으로 예상합니다: [5]. 결과는 매우 다르며 매우 놀랍습니다(초보자의 경우). >>> foo() [5] >>> foo() [5, 5] >>> foo() [5, 5, 5] >>> foo() [5, 5, 5, 5] >>> foo() 내 매니저는 이 기능을 처음 접했고 그것을 언어의 "극적인 디자인 결함"이라고 불렀습니다. 나는 그 행동에 근본적인 설명이 있다고 대답했고, 내부를 이해하지 못하면 실제로 매우 당혹스럽고 예상치 못한 일입니다. 그러나 나는 다음과 같은..

파이썬 2022.08.21

[python] 목록이 비어 있는지 어떻게 확인합니까?

이 질문의 답변은 커뮤니티의 노력 입니다. 이 게시물을 개선하려면 기존 답변을 수정하세요. 현재 새로운 답변이나 상호 작용을 허용하지 않습니다. 예를 들어 다음을 통과한 경우: a = [] a비어 있는지 어떻게 확인 합니까? if not a: print("List is empty") 공백 의 암시적 부울 을 사용하는 list것은 매우 파이썬적입니다. 파이썬적인 방법은 PEP 8 스타일 가이드 에서 가져온 것 입니다. 시퀀스(문자열, 목록, 튜플)의 경우 빈 시퀀스가 ​​거짓이라는 사실을 사용합니다. # Correct: if not seq: if seq: # Wrong: if len(seq): if not len(seq): 나는 그것을 명시 적으로 선호합니다. if len(li) == 0: print('t..

파이썬 2022.08.21

[python] Python에서 두 목록을 어떻게 연결합니까?

이 질문의 답변은 커뮤니티의 노력 입니다. 이 게시물을 개선하려면 기존 답변을 수정하세요. 현재 새로운 답변이나 상호 작용을 허용하지 않습니다. Python에서 두 목록을 어떻게 연결합니까? 예시: listone = [1, 2, 3] listtwo = [4, 5, 6] 예상되는 결과: >>> joinedlist [1, 2, 3, 4, 5, 6] +연산자를 사용 하여 목록을 결합합니다. listone = [1, 2, 3] listtwo = [4, 5, 6] joinedlist = listone + listtwo 산출: >>> joinedlist [1, 2, 3, 4, 5, 6] 파이썬 >= 3.5대안:[*l1, *l2] PEP 448언급할 가치가 있는 수용을 통해 또 다른 대안이 도입되었습니다 . 추가 풀..

파이썬 2022.08.21
반응형