「The Zen of Python」の版間の差分
ページの作成:「'''The Zen of Python'''とは、Pythonプロジェクトが掲げている設計哲学、標語(スローガン)である。Zenとは「禅」のことである...」 |
Administrator (トーク | 投稿記録) |
||
| (4人の利用者による、間の4版が非表示) | |||
| 1行目: | 1行目: | ||
'''The Zen of Python''' | '''The Zen of Python'''(読み:ざ・ぜん・おぶ・ぱいそん)とは、[[Python]]プロジェクトが掲げている設計哲学、標語(スローガン)である。Zenとは「禅」のことである。 | ||
== 原文 == | == 原文 == | ||
| 25行目: | 25行目: | ||
== 日本語訳 == | == 日本語訳 == | ||
* | * 汚いのより綺麗な方がいい | ||
* ごちゃごちゃ難しいのより、白黒はっきりしてるのがいい | * ごちゃごちゃ難しいのより、白黒はっきりしてるのがいい | ||
* | * 面倒なのより簡単な方がいい | ||
* | * けど、訳分かんなくなるくらいなら面倒な方がまし | ||
* ネストさせなくていいならしない方がいい | * ネストさせなくていいならしない方がいい | ||
* たくさん詰め込んだのよりスカスカな方がいい | * たくさん詰め込んだのよりスカスカな方がいい | ||
| 43行目: | 43行目: | ||
* 作るものをうまく説明できないようならそれはボツ | * 作るものをうまく説明できないようならそれはボツ | ||
* うまく説明できたらたぶんそれがグッド | * うまく説明できたらたぶんそれがグッド | ||
* | * ブラボーなアイディア名前空間、やっぱこれですね | ||
<ref>http://www.python.jp/Zope/articles/misc/zen</ref> | <ref>http://www.python.jp/Zope/articles/misc/zen</ref> | ||
== thisモジュール == | == thisモジュール == | ||
thisモジュールをimportすると、この標語が画面に表示される。 | thisモジュールをimportすると、この標語が画面に表示される。[[豆知識]]。 | ||
<ref>http://yk55.com/blog/2010/11/14/python_good_stroy_behindthis_module_/</ref> | <ref>http://yk55.com/blog/2010/11/14/python_good_stroy_behindthis_module_/</ref> | ||
<source lang="python"> | <source lang="python"> | ||
| 63行目: | 62行目: | ||
>>> import this | >>> import this | ||
</source> | </source> | ||
=== ソースコード === | |||
thisモジュールの[[ソースコード]]はいたってシンプルだが、単純にprint文を呼び出しているだけではなく、[[カエサル暗号]](別名[[シーザー暗号]])と呼ばれる[[アルゴリズム]]が用いられており、[[Python]]に入門するうえで基本となる項目をひととおり網羅している。つまり[[Hello World]]の次のステップとしてこれが読めるようになれば[[Python]]の基礎はできたということになる。 | |||
<source lang="python"> | |||
s = """Gur Mra bs Clguba, ol Gvz Crgref | |||
Ornhgvshy vf orggre guna htyl. | |||
Rkcyvpvg vf orggre guna vzcyvpvg. | |||
Fvzcyr vf orggre guna pbzcyrk. | |||
Pbzcyrk vf orggre guna pbzcyvpngrq. | |||
Syng vf orggre guna arfgrq. | |||
Fcnefr vf orggre guna qrafr. | |||
Ernqnovyvgl pbhagf. | |||
Fcrpvny pnfrf nera'g fcrpvny rabhtu gb oernx gur ehyrf. | |||
Nygubhtu cenpgvpnyvgl orngf chevgl. | |||
Reebef fubhyq arire cnff fvyragyl. | |||
Hayrff rkcyvpvgyl fvyraprq. | |||
Va gur snpr bs nzovthvgl, ershfr gur grzcgngvba gb thrff. | |||
Gurer fubhyq or bar-- naq cersrenoyl bayl bar --boivbhf jnl gb qb vg. | |||
Nygubhtu gung jnl znl abg or boivbhf ng svefg hayrff lbh'er Qhgpu. | |||
Abj vf orggre guna arire. | |||
Nygubhtu arire vf bsgra orggre guna *evtug* abj. | |||
Vs gur vzcyrzragngvba vf uneq gb rkcynva, vg'f n onq vqrn. | |||
Vs gur vzcyrzragngvba vf rnfl gb rkcynva, vg znl or n tbbq vqrn. | |||
Anzrfcnprf ner bar ubaxvat terng vqrn -- yrg'f qb zber bs gubfr!""" | |||
d = {} | |||
for c in (65, 97): | |||
for i in range(26): | |||
d[chr(i+c)] = chr((i+13) % 26 + c) | |||
print "".join([d.get(c, c) for c in s]) | |||
</source> | |||
* http://svn.python.org/view/python/trunk/Lib/this.py?view=markup | |||
== 著者 == | == 著者 == | ||
| 68行目: | 101行目: | ||
== 著作権 == | == 著作権 == | ||
The Zen of Pythonの原文の著作権は[[パブリックドメイン]] | The Zen of Pythonの原文の著作権は[[パブリックドメイン]]で[[ライセンス]]されている。 | ||
== 関連項目 == | == 関連項目 == | ||
* [[Python]] | * [[Python]] | ||
* [[BSD入門の心得]] - 似たようなもの | |||
== 参考文献 == | == 参考文献 == | ||
{{reflist}} | |||
[[category: Python]] | |||