python來源是什么_python起源?為什么使用python?直至愛上python的五個理由

原標題:python起源?為什么使用python?直至愛上python的五個理由

Python的創始人,吉多·范羅蘇姆,是一名荷蘭計算機程序員,他作為 Python 程序設計語言的作者而為人們熟知。在 Python 社區,吉多·范羅蘇姆被人們認為是“仁慈的獨裁者(BDFL),意思是他仍然關注 Python的開發進程,并在必要的時刻做出決定。他在 Google 工作,在那里他把一半的時間用來維護 Python 的開發。

吉多·范羅蘇姆加入 Google,他用 Python 語言為 Google 寫了面向網頁的代碼瀏覽工具。

吉多·范羅蘇姆

1989年的圣誕節期間,吉多*范羅蘇姆為了在阿姆斯特丹打發時間,決心開發一個新的解釋程序,作為ABC語言的一種繼承。

ABC是吉多參加設計的一種教學語言,就吉多本人看來,ABC這種語言非常優美和強大,是專門 為非程序員設計的,但是ABC語言并沒有取得成功,究其原因,吉多認為是非開發造成的,吉多決 心在python中避免這一錯誤,并獲取了非常好的效果。

之所以所以選擇python(蟒蛇)來稱謂程序的名字,是因為他是BBC電視劇——蒙提-派森的飛行馬戲團《Monty Python’s Flying Circus》的愛好者

1991年,第一個python解釋器的誕生,它是用C語言實現的,并且能調用C語言的庫文件。

Python的設計目標

1999年,吉多-范羅蘇姆向DARPA提交了一條名為”Computer Programming For Everybody”的資金申請,并在后來說明了他對Python的目標:

一門簡單直觀的語言并與主要競爭者一樣強大

開源,以便任何人都可以為它做貢獻

代碼像純英語那樣容易理解

適用于短期開發的日常任務

這些想法中的基本都已經成為現實,Python已經成為一門流行的編程語言

Python的特點

Python是完全面向對象的語言,函數、模塊、數字、字符串都是對象,在 Python中一切皆對象,完全支持繼承、重載、多重繼承,支持重載運算符,也支持泛型設計。

Python擁有一個強大的標準庫,Python語言的核心只包含數字、字符串、列表、字典、文件等常見類型和函數,而由Python標準庫提供了系統管理、網絡通信、文本處理、數據庫接口、圖形系統、XML處理等額外的功能。

Python社區提供了大量的第三方模塊,使用方式與標準庫類似。它們的功能覆蓋科學計算、人工智能、機器學習、Web開發、數據庫接口、圖形系統多個領域。

愛上python的五個理由

1. Python 社區很獨特

Python 社區非常棒。它是最早采用行為準則的組織之一,在 Python 社區中,你可以看到非常多有思想的博客文章和會議演講供社區成員閱讀,這是一個真正兼具多樣性和包容性的社區。

同時,雖然社區是全球性的,但在本地社區也會有很多很棒的活動。當地的 Python 聚會是一個很好的去處,可以遇到聰明、有經驗、樂于助人的人。許多聚會都會明確為有經驗的人預留一些時間,以幫助希望學習新概念或解決代碼問題的新手。當我開始我的 Python 學習之旅時,我的本地社區花了很多時間來幫助我,我很榮幸能夠繼續回饋給新的開發人員。

無論您是參加本地社區會議,還是在 IRC、Slack 和 Twitter 上花時間,我相信你都會遇到可愛的人,他們都希望幫助你成為成功的開發人員。

Python 的生態系統是龐大的

對于標準庫中沒有的很多東西,Python 有一個巨大的生態系統來支持新的 Pythonista,從令人興奮的包到專門針對該語言的文本編輯器插件都有。PyPi 上托管了大約 200,000 個項目 (截止撰寫本文時),而且項目數量還在不斷增加,每個人都可以使用這些工具。

Python 標準庫

Python 有一個很棒的標準庫,其中隱藏了許多我以前不知道的寶貴內容,常量、類型等等的列表,我才有了大體的了解。我個人最喜歡的模塊是 itertools 模塊,但我更喜歡函數式編程模塊,因為該模塊在功能編程模塊下列出。

Python 有強大的原函數

在編程語言設計中,原函數是最簡單的可用元素。Python 易于閱讀的事實并不意味著它不是一種功能強大的語言,而源于它對原函數的使用。我最喜歡的Python 既易于使用又高級的例子是其生成器的概念。假設你有一個簡單的二叉樹結構,包含 value、left、right。你希望按順序輕松地對其進行迭代。您通常會尋找“小”元素,以便在找到正確的值時立即退出。到目前為止,這聽起來很簡單。然而,有很多種算法可以對元素進行操作。其他語言會讓你寫一個訪問者,這樣你可以在這個函數中判斷“這是正確的元素嗎?”你也可以在 Python 中這樣做,但這并不是必須做的事情。

Python 讀起來像可執行的偽代碼

偽代碼是這樣一種概念,它不遵循特定語言的確切句法和語法來編寫編程邏輯。自從成為一名 Python 程序員以來,我已經幾乎不怎么編寫偽代碼了,因為 Python 的實際設計滿足了我的需要。Python 對代碼格式中的空白規定是出了名的。空白對于任何語言都是必需的,它能夠讓我們區分出句子中不同的單詞。大多數語言都有關于空格用法的建議或“最佳實踐”,但是 Python 大膽地要求標準化。對我來說,這使得閱讀代碼并準確地看到它在做什么變得非常簡單。

Python 還避免了對分號的需求,分號是使其他語言可讀的。

我在世界各地的社區中發現了善良、有思想的 Python 從業者,社區為有需要的人提供的投資數額令人鼓舞。除了我遇到的那些人之外,簡單、干凈、強大的 Python 語言讓任何開發人員都有足夠的能力在他們的軟件開發生涯中充滿自信,或者作為一個業余愛好者享受使用有趣語言的樂趣。以上就是愛上 Python 的 5 個理由,如果你有興趣學習新語言,或許可以考慮使用 Python。返回搜狐,查看更多

責任編輯:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396640.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396640.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396640.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux系統(五)負載均衡LVS集群之DR模式

序言 DR模式是lvs集群中三種負載均衡模式的其中一種,那么上一篇中我寫啦關于NAT模式的搭建與原理,為什么還要有DR模式與IP隧道模式呢? 首先我們來看3張圖。LVS/NAT模式如下圖: LVS/IP隧道模式,如下圖: LVS/…

Redux API之applyMiddleware

applyMiddleware(...middlewares) 使用包含自定義功能的 middleware 來擴展 Redux 是一種推薦的方式。Middleware 可以讓你包裝 store 的dispatch 方法來達到你想要的目的。同時, middleware 還擁有“可組合”這一關鍵特性。多個 middleware 可以被組合到一起使用&a…

計算機2018創業方向,推薦2018年創業的方向

原標題:推薦2018年創業的方向1 新電商傳統的零售業收到互聯網電商的重沖擊,從而進行線上線下的結合是必然的趨勢,新零售,新電商,是幾千萬零售企業成功轉型的必然之路,學習一套全面的新電商轉型的方法&#…

包無法安裝_詳細教程 | 安裝Python編程環境以及使用OpenpyXl操作Excel

詳細教程 | 安裝Python編程環境以及使用OpenpyXl操作Excel注意:下列教程為 Windows7 64位;Windows 10有部分步驟有差異,請參考使用!01 下載Python程序安裝包首先前往Python官網 www.python.org,進入官網點擊 Downloads,然后點擊 W…

Activity、Fragment、Dialog基類簡單整理

版權聲明:本文為HaiyuKing原創文章,轉載請注明出處! 概述 這里簡單記錄下Activity、Fragment、Dialog基類中的常規寫法,后續根據項目需求進行相應的擴展。 BaseActivity.java package com.why.project.myapptemplet.activity;impo…

request重定向_golang不想http自動處理重定向的解決方案

前言有時候發送http請求不想讓庫自動幫忙處理重定向,庫里面默認的是會把所有重定向都完成一遍,結果就是最后一個沒有重定向的請求的結果。因此需要一種方案直接獲取首次訪問的結果,不走重定向。go的http庫里面是使用如下代碼檢查重定向的&…

C語言項目開發-項目架構和編程命名規范

一個項目的流程:1、公司市場人員與客戶交流,了解客戶、引導客戶使用公司最優資源并產出一份市場需求文檔 2、公司需求人員(BA)與客戶交流,了解客戶需求并產出一個軟件需求文檔 3、項目經理、開發小組成員、需求人員&am…

ajax登錄驗證的原理,ajax用戶登錄驗證-get和post提交方式,與工作原理—2018-8-15...

ajax用戶登錄驗證:實例html>Ajax實戰:表單驗證用戶登錄郵箱: 密碼: 提交let btn document.getElementsByTagName(button)[0];btn.onclick function () {//1.創建xhr對象let xhr new XMLHttpRequest();//2.監聽響應狀態xhr.onreadystatechange function(){// …

將Python腳本打包成可執行文件

Python是一個腳本語言,被解釋器解釋執行。它的發布方式: .py文件:對于開源項目或者源碼沒那么重要的,直接提供源碼,需要使用者自行安裝Python并且安裝依賴的各種庫。(Python官方的各種安裝包就是這樣做的&a…

float foo=42e1為什么錯_為什么重寫了equals()也要重寫hashCode()

小Hub領讀:雖然是很基礎的一篇文章,但是對于equals、hashcode兩個方法,相信很多人都與其中的規則不熟悉,來跟著小Hub花個8分鐘回顧一下!作者:不學無數的程序員https://my.oschina.net/u/4030990/blog/31341…

ssh客戶端_一款基于TAS框架的SSH客戶端蠕蟲

TEA是一款基于TAS框架的SSH客戶端蠕蟲,從本質上說,它是一個仿冒的SSH客戶端,它能夠修改tty輸入/輸出來實現任意命令執行,或通過SSH連接來上傳自身以實現滲透感染。為了實現該工具的正常功能,遠程主機需要滿足以下條件&…

Selenium入門11 滾動條控制(通過js)

這一節要有js基礎。做web端的UI自動化必須要有html,css,javascript前端基礎。 滾動條控制: 1 移動垂直滾動條 document.documentElement.scrollTop 2 移動垂直滾動條 document.documentElement.scrollLeft 3 找到某個元素,移動到可…

Qt之QNetworkInterface

簡述 QNetworkInterface類負責提供主機的IP地址和網絡接口的列表。 QNetworkInterface表示了當前程序正在運行時與主機綁定的一個網絡接口。每個網絡接口可能包含0個或多個IP地址,每個IP地址都可選擇性地與一個子網掩碼和/或一個廣播地址相關聯。這樣的列表可以通過…

第二周計劃

上周計劃回顧 3.5 ~ 3.11 數據: 評師網爬取,完成:2k條記錄 finished后端 數據結構 技術選型 學校API封裝未完成:后端負責人出差 工作暫停產品 功能設計:主要功能提交:原型圖 幾個頁面 每個頁面大概功能完成…

python編程軟件排行榜_PYPL 9月編程語言排行榜發布 Python一枝獨秀

開發者可以將 PYPL 作為一個參考,決定學習何種語言或 IDE,或者在新的軟件項目中使用何種語言或數據庫。9 月份的榜單如下:前五名分別是 Python、Java、JavaScript、C# 與 PHP。相比去年 9 月份的數據,除了 Python 大幅上漲了 4.5%…

分享到系統面板_win7電腦沒有nvidia控制面板怎么辦【解決方法】

我們在使用電腦的時候,當電腦顯卡出現問題導致屏幕畫面不清晰時,可以使用win7系統自帶nvidia控制面板,它能夠對顯卡進行設置,提升顯卡功能,不過很多電腦用戶點擊nvidia控制面板時卻提示nvidia顯示設置不可用&#xff0…

Python之數據加密與解密(hashlib、hmac、random、base64、pycrypto)--轉載

本文內容 數據加密概述Python中實現數據加密的模塊簡介hashlib與hmac模塊介紹random與secrets模塊介紹base64模塊介紹pycrypto模塊介紹總結參考文檔提示: Python 2.7中的str是字節串,而Python 3.x中的str是字符串。本文中的代碼都是通過Python 2.7實現的…

day3-文件操作之基本操作

一、文件的基本操作 文件內容: Somehow, it seems the love I knew was always the most destructive kind 不知為何,我經歷的愛情總是最具毀滅性的的那種 Yesterday when I was young 昨日當我年少輕狂1、read() 當read()函數中傳入整數(int)參數&#…

QT連接多種數據庫f方法及測試

QT提供了對多種數據庫的訪問支持,對SQL Server也可以通過ODBC來進行訪問。要想順利訪問SQL Server。 首先要保證以下幾點:1. QT編譯時已經編譯了QtSql2. 編譯了ODBC插件。可以通過 configure -plugin-sql-odbc來保證,也可以單獨編譯~/src/plu…

服務器如何實現電腦無線橋接,無線路由器WDS橋接成功副路由器下電腦無法上網怎么辦【解決方法】...

摘 要無線WDS橋接設置完成后,在副路由器管理面,運行狀態 無線狀態 中,WDS狀態顯示成功,但電腦通過副路由無法上網。該問題可能與主、副路由器的設置有關,如下圖所示: 解決辦法: 排查一&#xff…