2010-06-01 4 views
1

내가 파이썬 스크립트이상한 (?)이 모듈 가져 오기 구문

from pprint import pprint 

이유는 단순히 import pprint에 다음 코드를 통해 왔어요? 모듈 pprint가 pprint로 별칭되고있는 기능이라고 pprint을 포함하지 않는

(확실히,이 광기의 정의해야합니다?)

+0

나는 당신이 당신 자신의 질문에 대답했다고 생각합니다. – scribu

+3

당신은 당신 자신의 질문에 대답했습니다. 그리고 그것은 광기가 아닙니다. 이 방법은 pprint라는 이름으로, pprint 모듈에 있습니다. – extraneon

+0

'pprint' madness 함수를 포함하는'pprint' 모듈을 왜 호출합니까? 그게 뭐가 잘못 됐어? 질문을 업데이트하여 "광기"란 뜻을 설명해 주시겠습니까? –

답변

3

이 함수에는 pprint 함수가 포함되어 있으며 그게 정확히 무슨 일이야. 나는 pprint.pprint 나 decimal.Decimal, datetime.datetime.now()가 아닌 pprint를 타이핑하는 것을 선호한다 - 그렇지 않습니까?

+0

eloff : 누구나 왜 그렇게하고 싶은지 설명하는 유스 케이스에 +1. 좋아, 나는 무슨 일이 벌어지는 지 알아. 모듈은 Python 객체에 대해 일종의 '네임 스페이스 (namespacing)'를 제공합니다. 그래도 조금 이상하게 느껴진다. 나는 익숙해 질 것이다. – morpheous

0

당신의 믿음은 정확하지만, 어떤 방법으로 "별칭"되지 않는다 . 어떤 파이썬 스타일 가이드에도 위배되지 않는 단순히 pprint이라는 이름입니다.

1

예, 구문은 from module import functions이므로 첫 번째 pprint는 모듈 이름이고 두 번째 ping은 함수 이름입니다.

관련 문제