에서 '내부 기능'수입 :진정한 차이 '정상'이 질문과 관련하여 파이썬
난에 가까운 import 문을 넣어 생각 : 내 물어의 시간에 여기에 인용 local-import-statements-in-python, 이 사용하는 단편은 종속성을보다 명확하게 만들어 가독성을 높입니다. 파이썬 캐시? 내가 신경 써야 할까? 이것은 나쁜 생각입니까?
def Process(): import StringIO file_handle=StringIO.StringIO('hello world') #do more stuff for i in xrange(10): Process()
조금 더 정당화 : 그것은 의 비밀 비트 라이브러리를 사용하는 방법에 대한,하지만 다른 파일로 방법을 리팩토링 때 런타임을 얻을 때까지, 나는 외부 의존성을 놓친 를 실현하지 않습니다 오류.
결국 평 파일의 맨 위에 모듈을 수입하고 함수 정의 내부에서 그것을 가져 사이의 진정한 차이는 무엇입니까
- :
나는 다음과 같은 질문하고자하는? 예를 들어
, 나는 개인적으로 내가 내에서 import 문을 호출 한 후 정상적으로 실행 듯 내 스크립트가 stangely 충분히 내 파일의 상단에있는 모듈을 가져올 때 충돌하지만 win32com.client
모듈 특정 문제가 발생 그 함수는 그 메소드 중 하나를 호출했다.
자세한 내용은 여기 내 다른 게시물을 참조하십시오. How to launch win32 applications in separate threads in Python.
이 문제는 locals() 및 globals()와 관련이있는 것으로 의심됩니다. 경우에 따라 다르게 업데이트되거나 업데이트되지 않습니다. 제발 저에게 계몽하십시오.
함수에서는'*'imports를 사용할 수 없습니다. (그들은 파이썬의 오래된 버전에서 허용되었다 ...). 이 부분에서 나는 다른 큰 차이가 있다고 생각하지 않습니다. – Bakuriu