<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                如同學習任何一種自然語言比如英語、或者其它編程語言比如匯編(這個我喜歡,可惜多年之后,已經好久沒有用過了)一樣,總要說一說有關這種語言的事情,有的可能就是八卦,越八卦的越容易傳播。當然,以下的所有說法中,難免充滿了自戀,因為你看不到說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/](https://www.python.org/doc/essays/foreword/)) 首先,必須承認,這個哥們兒是一個牛人,非常牛的人。此處獻上我的崇拜。 其次,做為剛剛開始學習python的朋友,可千萬別認為python就是一個隨隨便便就做出來的東西,就是一個牛人一沖動搞出來的東西。人家也是站在巨人的肩膀上的。 第三,牛人在成功之后,往往把奮斗的過程描繪的比較簡單,或者是謙虛?或者是讓人聽起來他更牛?反正,我們看最后結果的時候,很難感受過程中的酸甜苦辣。 不管怎么樣,牛人在那時刻開始創立了python,而且,他更牛的在于具有現代化的思維:開放。通過Python社區,吸引來自世界各地的開發者,參與python的建設。在這里,請讀者一定要聯想到Linux和它的創始人芬蘭人林納斯·托瓦茲。兩者都秉承“開放”思想,得到了來自世界各地開發者和應用者的歡呼和尊敬。也請大家再聯想到另外一個在另外領域秉承開放思想的人——鄧小平先生,他讓一個封閉的破舊老水車有了更新。 請列位多向所有倡導“開放”的牛人們表示敬意,是他們讓這個世界更美好了。他們以行動詮釋了熱力學第二定律——“熵增原理”。 ## Python的現在 有一次與某軟件公司一個號稱是CTO的人談話,他問我用什么語言開發,我說用Python,估計是我的英語發音不好吧(我這回真的謙虛了一把),他居然聽成了Pascal(也是一種高級語言,現在很少用了,曾經是比較流行的教學語言)。嗚呼,Python是小眾嗎?不是,是那家伙眼界不開闊!接觸過不少號稱CTO的,多數是有幾年經驗的程序員,并沒有以國際視野來看待技術,當然,大牛的CTO還是不少的。總之,不要被外表忽悠了,“不看廣告,看療效”。 首先看一張最近一期的編程語言排行 [![](https://github.com/qiwsir/ITArticles/raw/master/Pictures/python1.png)](https://github.com/qiwsir/ITArticles/blob/master/Pictures/python1.png) 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的美好,開始學啦,做好如下準備: * 電腦,必須的。不管是什么操作系統。 * 上網,必須的。沒有為什么。 除了這些,還有一條,非常非常重要,寫在最后:**這是自己的興趣。**
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看