>Then God said: "Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. #å å¨ä¸äºå ³äºPythonçäºæ å¦åå¦ä¹ ä»»ä½ä¸ç§èªç¶è¯è¨æ¯å¦è±è¯ãæè å ¶å®ç¼ç¨è¯è¨æ¯å¦æ±ç¼ï¼è¿ä¸ªæå欢ï¼å¯æå¤å¹´ä¹åï¼å·²ç»å¥½ä¹ 没æç¨è¿äºï¼ä¸æ ·ï¼æ»è¦è¯´ä¸è¯´æå ³è¿ç§è¯è¨çäºæ ï¼æçå¯è½å°±æ¯å «å¦ï¼è¶å «å¦çè¶å®¹æä¼ æãå½ç¶ï¼ä»¥ä¸çææè¯´æ³ä¸ï¼é¾å å æ»¡äºèªæï¼å ä¸ºä½ çä¸å°è¯´Pythonçåè¯ãè¿ä¹å¥½çè§£ï¼å¦æè¦æç¼ºç¹æ¯æ¯è¾å®¹æçäºæ ï¼ä½æ¯æ¾ä¼ç¹ï¼ä¸ç®¡æ¯å¯¹äººè¿æ¯å¯¹å ¶å®äºå¡ï¼é½æ¯å°é¾çãè¿ä¹è®¸æ¯äººç壿 ¹ä¹æå¨å§ï¼å欢æå«äººçåºå¿ï¼ä»èå½°æ¾èªå·±å¨é£æ¹é¢é«äºå¯¹æ¹ãç¹å«æ¯å¨æä»¬è¿ä¸ªéº»å°æåå æ¥çç¥å¥å°æ¹ï¼æ´å¤äºã åºè¯å°è¯´ç¹ï¼å·²ç»ä¸å°äºï¼ï¼è¿å ¥æå ³pythonçè¯é¢ã ##Pythonçæ¨å¤©ä»å¤©åæå¤© è¿ä¸ªé¢ç®æç¹å¤§äºï¼ä¼¼ä¹å顾è¿å»ãèå¯ç°å¨ãå¼ ææªæ¥ï¼é½æ¯é£äºææ¡æ¹åç大人ç©ï¼å¸æºåï¼ï¼åçãé£å°±è®©æä»¬æ¯ä¸ªäººé½æä¸ºå¤§äººç©å§ãå ä¸ºå¦æä¸å顾ä¸ä¸åå²ï¼ä¼¼ä¹æ æ³æ»¡è¶³å¦ä¹ è ç好å¥å¿ï¼å¦æä¸èå¯ä¸ä¸ç°å¨ï¼å¦ä¹ è 䏿¾å¿ï¼æ å¿å¦äºä¹å没æä»ä¹ç¨éï¼ï¼å¦æä¸å¼ æä¸ä¸æªæ¥ï¼æä¹è½å¸å¼ï¼ä¹ç®æ¯ä¸ç§å¿½æ å§ï¼å¦ä¹ è æè æªæ¥çå¼åè å¢ï¼ ##Pythonçåå² Pythonçåå§äººä¸ºåå¤Â·èç½èå§ï¼Guido van Rossumï¼ãå ³äºè¿ä¸ªäººå¼åè¿ç§è¯è¨çè¿ç¨ï¼å¾å¤èµæéé¢é½è¦è®°å½ä¸é¢çæ äºï¼ >>1989å¹´çå£è¯èæé´ï¼åå¤Â·èç½èå§ä¸ºäºå¨é¿å§æ¯ç¹ä¸¹æåæ¶é´ï¼å³å¿å¼åä¸ä¸ªæ°çèæ¬è§£éç¨åºï¼ä½ä¸ºABCè¯è¨çä¸ç§ç»§æ¿ã乿以éä¸Pythonä½ä¸ºç¨åºçååï¼æ¯å ä¸ºä»æ¯ä¸ä¸ªèæÂ·æ´¾æ£®çé£è¡é©¬æå¢çç±å¥½è ãABCæ¯ç±åå¤åå 设计çä¸ç§æå¦è¯è¨ãå°±å夿¬äººçæ¥ï¼ABCè¿ç§è¯è¨é常ä¼ç¾åå¼ºå¤§ï¼æ¯ä¸é¨ä¸ºéä¸ä¸ç¨åºå设计çã使¯ABCè¯è¨å¹¶æ²¡ææåï¼ç©¶å ¶åå ï¼åå¤è®¤ä¸ºæ¯é弿¾é æçãåå¤å³å¿å¨Pythonä¸é¿å è¿ä¸é误ï¼å¹¶åå¾äºéå¸¸å¥½çææï¼å®ç¾ç»åäºCåå ¶ä»ä¸äºè¯è¨ã è¿ä¸ªæ äºææ¯ä»ç»´åºç¾ç§éé¢ç´æ¥å¤å¶è¿æ¥çï¼å¾å¤è®²pythonåå²çèµæéé¢ï¼ä¹é½è½¬è½½è¿æ®µã使¯ï¼å¨ææ¥çï¼è¿æ®µæ äºæç¹å¿½æ 人çå³éãå ¶å®ï¼ä¸é¢è¿æ®µä¸æå°çï¼åå¤ä¸ºäºæåæ¶é´èå³å®å¼åpythonç说æ³ï¼æ¥èªä»èªå·±çè¿æ ·ä¸æ®µèªè¿°ï¼ >>Over six years ago, in December 1989, I was looking for a "hobby" programming project that would keep me occupied during the week around Christmas. My office (a government-run research lab in Amsterdam) would be closed, but I had a home computer, and not much else on my hands. I decided to write an interpreter for the new scripting language I had been thinking about lately: a descendant of ABC that would appeal to Unix/C hackers. I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of Monty Python's Flying Circus).(åæå°åï¼https://www.python.org/doc/essays/foreword/) é¦å ï¼å¿ é¡»æ¿è®¤ï¼è¿ä¸ªå¥ä»¬å¿æ¯ä¸ä¸ªç人ï¼é常ççäººãæ¤å¤ç®ä¸æçå´æã å ¶æ¬¡ï¼å为ååå¼å§å¦ä¹ pythonçæåï¼å¯åä¸å«è®¤ä¸ºpythonå°±æ¯ä¸ä¸ªéé便便就ååºæ¥çä¸è¥¿ï¼å°±æ¯ä¸ä¸ªç人ä¸å²å¨æåºæ¥çä¸è¥¿ãäººå®¶ä¹æ¯ç«å¨å·¨äººçè©èä¸çã 第ä¸ï¼çäººå¨æåä¹åï¼å¾å¾æå¥æçè¿ç¨æç»çæ¯è¾ç®åï¼æè æ¯è°¦èï¼æè æ¯è®©äººå¬èµ·æ¥ä»æ´çï¼åæ£ï¼æä»¬çæåç»æçæ¶åï¼å¾é¾æåè¿ç¨ä¸çé ¸çè¦è¾£ã ä¸ç®¡æä¹æ ·ï¼ç人å¨é£æ¶å»å¼å§åç«äºpythonï¼èä¸ï¼ä»æ´ççå¨äºå ·æç°ä»£åçæç»´ï¼å¼æ¾ãéè¿Python社åºï¼å¸å¼æ¥èªä¸çåå°çå¼åè ï¼åä¸pythonç建设ãå¨è¿éï¼è¯·è¯»è ä¸å®è¦èæ³å°Linuxåå®çåå§äººè¬å °äººæçº³æ¯Â·æç¦å ¹ã两è é½ç§æ¿â弿¾âææ³ï¼å¾å°äºæ¥èªä¸çåå°å¼åè ååºç¨è çæ¬¢å¼åå°æ¬ãä¹è¯·å¤§å®¶åèæ³å°å¦å¤ä¸ä¸ªå¨å¦å¤é¢åç§æ¿å¼æ¾ææ³ç人ââéå°å¹³å çï¼ä»è®©ä¸ä¸ªå°éçç ´æ§è水车æäºæ´æ°ã 请åä½å¤ææå¡å¯¼â弿¾âççäººä»¬è¡¨ç¤ºæ¬æï¼æ¯ä»ä»¬è®©è¿ä¸ªä¸çæ´ç¾å¥½äºãä»ä»¬ä»¥è¡å¨è¯ éäºçåå¦ç¬¬äºå®å¾âââçµå¢åçâã ##Pythonçç°å¨ æä¸æ¬¡ä¸æè½¯ä»¶å ¬å¸ä¸ä¸ªå·ç§°æ¯CTOç人è°è¯ï¼ä»é®æç¨ä»ä¹è¯è¨å¼åï¼æè¯´ç¨Pythonï¼ä¼°è®¡æ¯æçè±è¯åé³ä¸å¥½å§ï¼æè¿åççè°¦èäºä¸æï¼ï¼ä»å± ç¶å¬æäºPascalï¼ä¹æ¯ä¸ç§é«çº§è¯è¨ï¼ç°å¨å¾å°ç¨äºï¼æ¾ç»æ¯æ¯è¾æµè¡çæå¦è¯è¨ï¼ãåå¼ï¼Pythonæ¯å°ä¼åï¼ä¸æ¯ï¼æ¯é£å®¶ä¼ç¼çä¸å¼éï¼æ¥è§¦è¿ä¸å°å·ç§°CTOçï¼å¤æ°æ¯æå å¹´ç»éªçç¨åºåï¼å¹¶æ²¡æä»¥å½é è§éæ¥çå¾ ææ¯ï¼å½ç¶ï¼å¤§ççCTOè¿æ¯ä¸å°çãæ»ä¹ï¼ä¸è¦è¢«å¤è¡¨å¿½æ äºï¼âä¸ç广åï¼ççæâã é¦å çä¸å¼ æè¿ä¸æçç¼ç¨è¯è¨æè¡  pythonå¨è¿ä¸ªæ¦åä¸ç¬¬8ï¼ä¹è®¸çå®å¿ç卿³ï¼ä¸ºä»ä¹æä¸å»å¦é£ä¸ªæç¬¬ä¸å¢ï¼å¦ææ¨æ¯ä¸ä¸ªé¶åºç¡çå¦ä¹ è ï¼æä»¥å¤å¹´çå·¥ä½åæå¦ç»éªæ£åï¼è¿æ¯ä»å ¥é¨æ¯è¾å®¹æçå¼å§å§ï¼pythonæ¯è¿æ ·çãç以åï¼å®å ¨å¯ä»¥æå±å°å ¶å®è¯è¨ãæè®¸ä½ åé®äºï¼phpåvbæ¯ä¸æ¯å¯ä»¥å¢ï¼ä»ä»¬æåæ¯pythoné åãåçæ¯ï¼å½ç¶å¯ä»¥ã使¯ï¼å¦ä¹ ä¸ç§å ¥é¨çè¯è¨ï¼è¦å¤æ¹èèï¼æè®¸ä»¥åä½ å°±ä¸æ³å¦å«çï¼æ³ç¨è¿ä¸ªå æå¤©ä¸äºï¼é£å°±åªæpythonãå¹¶ä¸ï¼è¿å¾çä¸é¢çä¿¡æ¯ï¼ >>æ ¹æ®Dice.comä¸é¡¹ç½ä¸å¯¹20000åITä¸ä¸äººå£«è¿è¡è°æ¥çç»æ ï¼ >>java类平åå·¥èµï¼91060ç¾å ; >>python类平åå·¥èµï¼90208ç¾å ï¼ ä¸éï¼pythonç¨åºåå¹³åæ¥è®²ï¼æ¯javaå¹³åå·¥èµä½ï¼ä½ççå·®è·ï¼åçç两è çå ¥é¨é¨æ§ï¼å°±ç¥éï¼å¦ä¹ pythonç»å¯¹æ¯ä¸ä¸ªæ§ä»·æ¯é常é«çæèµå¦ã Pythonå°±æ¯è¿æ ·ï¼é»é»å°æå±çå®çé¢åã ##Pythonçæªæ¥ æªæ¥ï¼è¦é å为æ¥åäºï¼ä½ å¦å¥½äºï¼ç¨å¥½äºï¼æªæ¥å®å°±å æäºãå®çæªæ¥å¨ä½ æéã ##Pythonçç¹ç¹ å¾å¤é«çº§è¯è¨é½å®£ç§°èªå·±æ¯ç®åçãå ¥é¨å®¹æçï¼å¹¶ä¸å ·ææ®éæ§çãçæ£åå°è¿äºçï¼ä¸å¿½æ çï¼åªæPythonãææååäºä¸ä»¶è¡¬è¡«ï¼ä¸é¢åçâç彿éï¼æç¨Pythonâï¼è¿è¯´æä»ä¹ï¼å®æçç®åãå¼åé度快ï¼èçæ¶é´åç²¾åçç¹ç¹ãå ä¸ºå®æ¯å¼æ¾çï¼æå¾å¤å¯ç±çå¼åè ï¼ä¸ºå¼æ¾ç¤¾åºåè´¡ç®çå¼åè ï¼æ¯æå¯ç±ç人ï¼ï¼å°å¸¸ç¨çåè½å好äºï¼æ¾å¨ç½ä¸ï¼è°é½å¯ä»¥æ¿è¿æ¥ä½¿ç¨ãè¿å°±æ¯Pythonï¼è¿å°±æ¯å¼æ¾ã æä¸æ®µä¸¥æ ¼çæè¿°ï¼æ¥èªç»´åºç¾ç§ï¼ >>Pythonæ¯å®å ¨é¢å对象çè¯è¨ã彿°ã模åãæ°åãåç¬¦ä¸²é½æ¯å¯¹è±¡ãå¹¶ä¸å®å ¨æ¯æç»§æ¿ãéè½½ãæ´¾çãå¤ç»§æ¿ï¼æçäºå¢å¼ºæºä»£ç çå¤ç¨æ§ãPythonæ¯æéè½½è¿ç®ç¬¦ï¼å æ¤Python乿¯ææ³å设计ãç¸å¯¹äºLispè¿ç§ä¼ ç»ç彿°å¼ç¼ç¨è¯è¨ï¼Python坹彿°å¼è®¾è®¡åªæä¾äºæéçæ¯æãæä¸¤ä¸ªæ ååºï¼functools, itertoolsï¼æä¾äºHaskellåStandard MLä¸ä¹ ç»èéªç彿°å¼ç¨åºè®¾è®¡å·¥å ·ã >>è½ç¶Pythonå¯è½è¢«ç²ç¥å°å类为âèæ¬è¯è¨âï¼script languageï¼ï¼ä½å®é ä¸ä¸äºå¤§è§æ¨¡è½¯ä»¶å¼å项ç®ä¾å¦ZopeãMnetåBitTorrentï¼Googleä¹å¹¿æ³å°ä½¿ç¨å®ãPythonçæ¯æè è¾å欢称å®ä¸ºä¸ç§é«çº§å¨æç¼ç¨è¯è¨ï¼åå æ¯âèæ¬è¯è¨âæ³æä» ä½ç®åç¨åºè®¾è®¡ä»»å¡çè¯è¨ï¼å¦shell scriptãVBScriptçåªè½å¤çç®åä»»å¡çç¼ç¨è¯è¨ï¼å¹¶ä¸è½ä¸Pythonç¸æå¹¶è®ºã >>Pythonæ¬èº«è¢«è®¾è®¡ä¸ºå¯æ©å çãå¹¶éææçç¹æ§ååè½é½éæå°è¯è¨æ ¸å¿ãPythonæä¾äºä¸°å¯çAPIåå·¥å ·ï¼ä»¥ä¾¿ç¨åºåè½å¤è½»æ¾å°ä½¿ç¨CãC++ãCythonæ¥ç¼åæ©å 模åãPythonç¼è¯å¨æ¬èº«ä¹å¯ä»¥è¢«éæå°å ¶å®éè¦èæ¬è¯è¨çç¨åºå ãå æ¤ï¼å¾å¤äººè¿æPythonä½ä¸ºä¸ç§âè¶æ°´è¯è¨âï¼glue languageï¼ä½¿ç¨ã使ç¨Pythonå°å ¶ä»è¯è¨ç¼åçç¨åºè¿è¡éæåå°è£ ãå¨Googleå é¨çå¾å¤é¡¹ç®ï¼ä¾å¦Google Engine使ç¨C++ç¼åæ§è½è¦æ±æé«çé¨åï¼ç¶åç¨PythonæJava/Goè°ç¨ç¸åºç模åããPythonææ¯æåãçä½è 马ç¹å©ï¼Alex Martelliï¼è¯´ï¼âè¿å¾é¾è®²ï¼ä¸è¿ï¼2004å¹´ï¼Pythonå·²å¨Googleå é¨ä½¿ç¨ï¼Googleå¬å许å¤Python髿ï¼ä½å¨è¿ä¹å就已å³å®ä½¿ç¨Pythonãä»ä»¬çç®çæ¯å°½é使ç¨Pythonï¼å¨ä¸å¾å·²æ¶æ¹ç¨C++ï¼å¨ææ§ç¡¬ä»¶çåºå使ç¨C++ï¼å¨å¿«éå¼åæ¶å使ç¨Pythonãâ å¯è½é颿ä¸äºæ¯è¯è¿ä¸æ¯å¾çè§£ï¼æ²¡å ³ç³»ï¼åªè¦æç½ï¼Pythonæ¯ä¸ç§å¾ççè¯è¨ï¼åºç¨ç®åï¼åè½å¼ºå¤§ï¼googleé½å¨ä½¿ç¨ãè¿å°±è¶³å¤äºï¼è¶³å¤è®©ä½ ä¸å³å¿å¦ä¹ äºã ##pythonå²å¦ Python乿以ä¸ä¼ä¸åï¼è¿å¨äºå®å¼ºè°ä¸ç§å²å¦ç念ï¼ç¨é»å表示强è°å§ï¼ **Pythonç设计å²å¦æ¯âä¼é âãâæç¡®âãâç®åâã** Pythonå¼åè çå²å¦æ¯âç¨ä¸ç§æ¹æ³ï¼æå¥½æ¯åªæä¸ç§æ¹æ³æ¥åä¸ä»¶äºãå¨è®¾è®¡Pythonè¯è¨æ¶ï¼å¦æé¢ä¸´å¤ç§éæ©ï¼Pythonå¼åè ä¸è¬ä¼æç»è±ä¿çè¯æ³ï¼èéæ©æç¡®æ²¡ææè å¾å°ææ§ä¹çè¯æ³ãç±äºè¿ç§è®¾è®¡è§å¿µçå·®å¼ï¼Pythonæºä»£ç éå¸¸å ·å¤æ´å¥½çå¯è¯»æ§ï¼å¹¶ä¸è½å¤æ¯æå¤§è§æ¨¡ç软件å¼åãè¿äºåå被称为Pythonæ ¼è¨ã ##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 unless you're Dutch. 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! ä¸é¢çè¯æ¥èª[Python宿¹](http://legacy.python.org/dev/peps/pep-0020/)ï¼å·²ç»æåé¢å å¨çä¸è¥¿åäºç²¾ç¾çæ¦æ¬ãæä¸è¯æ¬ï¼[çè¿é](https://wiki.python.org/moin/PythonZenChineseTranslate)ï¼æ¬æææä¸ç§ä¸æç¿»è¯ï¼ ä¼ç¾èäºä¸éï¼ææ°èäºéæ¦ ç®åèäºå¤æï¼å¤æèäºç¹è æå¹³èäºåµå¥ï¼ç¨çèäºå¯é å¯è¯»æ§å¾éè¦ã è½ç¶å®ç¨æ§æ¯çº¯ç²¹æ§æ´éè¦ï¼ ä½ç¹ä¾å¹¶ä¸è¶³ä»¥æè§åç ´åæã éè¯¯ç¶ææ°¸è¿ä¸è¦å¿½ç¥ï¼ é¤éä½ æç¡®å°ä¿ææ²é»ï¼ ç´é¢å¤ä¹ï¼æ°¸ä¸èæã æä½³çéå¾åªæä¸æ¡ï¼ç¶èä»å¹¶éæ¾èæè§ââââè°å«ä½ 䏿¯è·å °äººï¼ ç½®ä¹ä¸çæè®¸ä¼æ¯æ å¿åºå¯¹è¦å¥½ï¼ ç¶èç°å¨å¨æè¿æ¯æææ çæ´å¥½ã é¾ä»¥è§£è¯»çå®ç°ä¸ä¼æ¯ä¸ªå¥½ä¸»æï¼ 容æè§£è¯»çæè®¸ææ¯ã åå空é´å°±æ¯ä¸ªé¡¶å±å±å¥½ç主æã 让æä»¬æ³åºæ´å¤ç好主æï¼ ##åå¤ å·²ç»æè¿°äºpythonçç¾å¥½ï¼å¼å§å¦å¦ï¼å好å¦ä¸åå¤ï¼ - çµèï¼å¿ é¡»çãä¸ç®¡æ¯ä»ä¹æä½ç³»ç»ã - ä¸ç½ï¼å¿ é¡»çãæ²¡æä¸ºä»ä¹ã é¤äºè¿äºï¼è¿æä¸æ¡ï¼é常é常éè¦ï¼å卿åï¼**è¿æ¯èªå·±çå ´è¶£ã**