Python의 PHP Compact() 및 Extract() 대응
PHP의 Compact() 함수는 지정된 기호 테이블에 해당하는 값으로 해시 테이블을 어셈블합니다. 이름을 지정하고 extract()는 이 프로세스를 반대로 수행합니다. Python은 locals(), globals() 및 vars()를 제공하지만 이러한 값의 일부를 분리하기 위한 기본 제공 메커니즘이 부족합니다.
Compact() 구현
원하는 경우 다음과 같이 Compact()에 해당하는 Python을 구현할 수 있습니다.
<code class="python">import inspect def compact(*names): caller = inspect.stack()[1][0] # caller of compact() vars = {} for n in names: if n in caller.f_locals: vars[n] = caller.f_locals[n] elif n in caller.f_globals: vars[n] = caller.f_globals[n] return vars</code>
Python의 Extract()
추출물 생성 시도 () Python의 함수는 권장되지 않습니다. 이전 Python 인터프리터에서는 해결 방법이 허용되었지만 최신 버전에서는 더 이상 작동하지 않습니다.
Python의 관점
compact() 및 extract() 사용은 일반적으로 권장되지 않습니다. Python은 명시성, 단순성, 명확성이라는 Python의 원칙에 어긋납니다. 그러나 이러한 기능은 디버깅, 사후 분석 또는 동적 변수 생성에 틈새 애플리케이션이 있을 수 있습니다.
위 내용은 Python에서 PHP의 Compact() 및 extract() 기능을 복제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!