목록파이썬 (69)
스택큐힙리스트
저는 긴 데이터 클래스를 이름 있는 튜플로 변환하려고 노력하고 있습니다. 현재 제 클래스는 다음과 같이 보입니다. class Node(object): def __init__(self, val, left=None, right=None): self.val = val self.left = left self.right = rightnamedtuple 으로 변환하면 다음과 같습니다. from collections import namedtupleNode = namedtuple('Node', 'val left right')하지만 여기에 문제가 있습니다. 내 원래 클래스는 값만 전달하면 이름이 지정된/키워드 인수의 기본값을 사용하여 기본값을 처리했습니다. 이와 같은 것: class BinaryTree(object): ..
이것은 간단한 스코핑 질문일 수 있습니다. Python 파일 (모듈)에서 다음 코드는 약간 혼란 스러워 보입니다. if __name__ == '__main__': x = 1 print x내가 이전에 일했던 언어에서, 이 코드는 예외를 던질 것입니다. x 변수는 if 문 내부에 지역 변수이기 때문에 외부에 존재해서는 안 됩니다. 그러나 이 코드는 실행되고 1을 출력합니다. 누가 이 동작을 설명해 줄 수 있나요? 모듈에서 생성된 모든 변수는 전역적이거나 모듈 전체에서 사용 가능한가요?답변 1파이썬 변수는 할당된 가장 안쪽의 함수, 클래스 또는 모듈에 범위가 지정됩니다. if 및 while 블록과 같은 제어 블록은 계산되지 않으므로 if 내에서 할당된 변수는 여전히 함수, 클래스 또는 모듈에 범위가 지정됩니다..
이 Python 애플리케이션은 때때로 멈추는 현상이 있어 그 원인을 찾을 수 없습니다.Python 인터프리터에 정확히 실행되고 있는 코드를 보여줄 방법이 있나요?실시간 스택 추적이 필요한가요?관련 질문: Print current call stack from a method in Python code Check what a running process is doing: print stack trace of an uninstrumented Python program답변 1이와 같은 상황에 사용하는 모듈이 있습니다. 프로세스가 오랜 시간 동안 실행되지만 때로는 알 수없는 무작위한 이유로 정지됩니다. 이것은 조금 꼼수스러우며 Unix에서만 작동합니다 (신호가 필요함). import code, traceback,..
나는 Pool.apply, Pool.apply_async 및 Pool.map에 대한 사용 사례와 명확한 예제를 보지 못했습니다. 나는 주로 Pool.map를 사용하고 있습니다. 다른 것들의 장점은 무엇인가요?답변 1옛날 파이썬에서 임의의 인자와 함께 함수를 호출하려면 apply를 사용했습니다. apply(f,args,kwargs)apply은 Python3에서는 더 이상 사용되지 않지만, 여전히 Python2.7에서 존재하며 일반적으로 사용되지 않습니다. 최근에는 ~합니다. f(*args,**kwargs)선호됩니다. multiprocessing.Pool 모듈은 유사한 인터페이스를 제공하려고 시도합니다.Pool.apply는 Python과 비슷하지만 함수 호출이 별도의 프로세스에서 수행된다는 점이 다릅니다. ..