python

The Zen of Python

게으른 the lazy 2020. 6. 20. 16:01

python console에서 import this를 하면 아래와 같이 The Zen of Python을 볼 수 있습니다. Zen은 '철학' 정도로 보면 될 것 같습니다.

 

The Zen of Python

 

번역은 나무위키 것을 가져와 약간 수정했습니다.

 

      • 아름다운 것이 추한 것보다 낫다. (Beautiful is better than ugly.)

      • 명시적인 것이 암묵적인 것보다 낫다. (Explicit is better than implicit.)

      • 간결한 것이 복잡한 것보다 낫다. (Simple is better than complex.)

      • 복잡한 것이 난해한 것보다 낫다. (Complex is better than complicated.)

      • 수평적인 것이 내포된 것보다 낫다. (Flat is better than nested.)

      • 여유로운(희소한) 것이 밀집한(조밀한) 것보다 낫다. (Sparse is better than dense.)

      • 가독성은 중요하다. (Readability counts.)

      • 규칙을 어겨야 할 만큼 특별한 경우라는 것은 없다. (Special cases aren't special enough to break the rules.)

      • 실용성이 순수성보다 중요하기는 하지만. (Although practicality beats purity.)

      • 오류는 절대로 묵시적으로 전달되어서는 안된다. (Errors should never pass silently.)

      • 묵시적으로 전달하도록 '명시'한 것이 아니라면. (Unless explicitly silenced.)

      • 모호함을 대할 때, 이를 추측하려는 유혹을 거부하라. (In the face of ambiguity, refuse the temptation to guess.)

      • (문제해결의) 명백한 하나의 방법이 존재해야 하며, 이왕이면 유일한 방법이어야 한다. (There should be one - and preferably only one - obvious way to do it.)

      • 비록 그 방법이 처음에는 명백해 보이지 않을지라도. (Although that way may not be obvious at first.)

      • 지금 행동에 옮기는 것이 아예 안하는 것보다는 낫다. (Now is better than never.)

      • 아예 안하는 것이 지금 *당장* 하는 것보다 나을 때도 많지만. (Although never is often better than *right* now.)

      • 구현방법을 설명하기 어렵다면, 아이디어가 나쁜 것이다. (If the implementation is hard to explain, it's a bad idea.)

      • 구현방법을 설명하기 쉽다면, 좋은 아이디어일지도 모른다. (If the implementation is easy to explain, it may be a good idea.)

      • 네임스페이스는 개훌륭한 아이디어이다. 더 많이 사용하자! (Namespaces are one honking great idea -- let's do more of those!)

 

import this 후 this.s와 this.d를 출력하면 아래와 같이 생긴 걸 볼 수 있습니다.

 

 

자세히 보니 this.s의 각 문자를 key로 하는 value를 this.d에서 찾으면 zen of python이 나올 것 같군요. 아래의 방법으로 복구할 수 있습니다.

 

 

- 게으른 파이썬