『Python基礎-1 』 編程語言Python的基礎背景知識

#『Python基礎-1 』 編程語言Python的基礎背景知識

目錄:html

1.編程語言
1.1 什麼是編程語言
1.2 編程語言的種類
1.3 常見的編程語言
1.4 編譯型語言和解釋型語言的對比java

2.Python背景知識
2.1 Python發展歷程
2.2 Python的優缺點
2.3 Python的應用
2.4 Python解釋器的種類
2.5 Python的執行過程
2.6 Python版本(2.x和3.x)python


1.編程語言


1.1 什麼是編程語言

編程語言(programming language),俗稱「計算機語言」,是用來定義計算機程序的形式語言。讓程序員可以準確地定義計算機所須要使用的數據,並精確地定義在不一樣狀況下所應當採起的行動。c++

1.2 編程語言的種類

編程語言的種類很是的多,總的來講能夠分紅機器語言、彙編語言、高級語言三大類。程序員

機器語言:

機器語言(machine language)是用二進制代碼表示的計算機能直接識別和執行的一種機器指令的集合.算法

這種指令集,稱機器碼(machine code),是電腦的CPU可直接解讀的數據。shell

  • 機器語言具備靈活、直接執行和速度快等特色。
  • 用機器語言編寫程序較爲繁瑣和費時,編出的程序全是些0和1的指令代碼,直觀性差,容易出錯
  • 弱通用性: 各計算機公司設計生產的計算機,其指令的數量與功能、指令格式、尋址方式、數據格式都有差異
彙編語言:

彙編語言(assembly language)是一種用於電子計算機、微處理器、微控制器或其餘可編程器件的低級語言,亦稱爲符號語言。彙編語言是直接面向處理器(Processor)的程序設計語言。編程

彙編語言的實質和機器語言是相同的,都是直接對硬件操做,只不過指令採用了英文縮寫的標識符,更容易識別和記憶。網絡

  • 彙編語言源程序必須通過彙編,生成目標文件,而後執行。
  • 彙編語言所能完成的操做不是通常高級語言所可以實現的,並且源程序經彙編生成的可執行文件不只比較小,並且執行速度很快。
  • 彙編源程序通常比較冗長、複雜、容易出錯,並且使用匯編語言編程須要有更多的計算機專業知識
高級語言:

高級語言(High-level programming language)相對於機器語言和彙編語言而言,是高度封裝了的編程語.框架

高級語言是較接近天然語言和數學公式的編程,基本脫離了機器的硬件系統,用人們更易理解的方式編寫程序。

高級語言並非特指的某一種具體的語言,而是包括不少編程語言,如流行的java,c,c++,C#,pascal,python等等.

  • 高級語言有更強的表達能力,可方便地表示數據的運算和程序的控制結構,能更好的描述各類算法,並且容易學習掌握
  • 高級語言編譯生成的程序代碼通常比用匯編程序語言設計的程序代碼要長,執行的速度也慢

1.3 常見的編程語言

計算機不能直接理解高級語言,只能直接理解機器語言,因此必需要把高級語言翻譯成機器語言,計算機才能執行高級語言編寫的程序。
根據兩種語言的翻譯方式不一樣,咱們又把常見的高級編程語言分爲編譯型語言和解釋性語言:

  • 編譯型語言:
    • C/C++、Pascal/Object Pascal(Delphi)等
  • 解釋型語言:
    • JavaScript、VBScript、Perl、Python、Ruby、MATLAB 等

20181001133958652469.png


1.4 編譯型語言和解釋型語言的對比

一個是編譯,一個是解釋。兩種方式只是翻譯的時間不一樣:

編譯型語言 解釋型語言
程序在執行以前須要一個專門的編譯過程,把程序編譯成爲機器語言的文件 在運行程序的時候才翻譯,每執行一次就要翻譯一次
程序執行速度快,同等條件下對系統要求較低 執行速度略低,對不一樣系統平臺間的兼容性有必定要求
可移植性差,在不一樣的OS平臺上運行,須要從新編譯 可移植性高,一套代碼,只須要使用不一樣平臺的解釋器便可

watermark,image_eXVuY2VzaGk=,t_100,g_se,x_0,y_0


2.Python背景知識


Python 是一個高層次的結合瞭解釋性、編譯性、互動性和麪向對象的腳本語言。

Python 的設計具備很強的可讀性,相比其餘語言常用英文關鍵字,其餘語言的一些標點符號,它具備比其餘語言更有特點語法結構。

2.1 Python發展歷程

  • Python的做者,Guido von Rossum(吉多·範·羅蘇姆,中國Python程序員都叫他 龜叔),荷蘭人。
    • 1989年開始開發,最初目的爲做爲ABC語言的一種繼承
    • 他對Python的指望是:介於C和shell之間,功能全面,易學易用,可拓展。
    • Python這個名字,來自Guido所摯愛的電視劇Monty Python’s Flying Circus。
  • 1991年,第一個Python編譯器誕生。它是用C語言實現的,並可以調用C語言的庫文件。Python創生之初便具備了:類,函數,異常處理,包含表和詞典在內的核心數據類型,以及模塊爲基礎的拓展系統。
  • 2000年10月16日,發佈Python 2.0,加入了內存回收機制,構成了如今Python語言框架的基礎
  • 2008年12月3日,發佈Python 3.0
  • 2014年11月,官方宣佈:Python2.7將在2020年中止支持,且再也不有2.8及以上的版本
  • 目前3.x版本的最近版本爲3.7 (2018年6月27日發佈)

2.2 Python的優缺點

  • Python的優勢:
    • 簡單易學
    • 開源,免費
    • 能夠移植在不一樣平臺 (意味着一套代碼能夠開發不一樣操做系統的軟件)
    • 高層的解釋型語言
    • 面向對象:比C和java簡單,且功能強大
    • 豐富且功能齊全的Python標準庫
  • Python的缺點:
    • 執行效率慢 (解釋型語言和編譯型語言相比較)

2.3 Python的應用

  • 技術領域:
    • 編程開發: WEB開發,GUI編程,遊戲開發,運維開發
    • 工具腳本: 自動化控制,批量處置
    • 數據採集: 網絡爬蟲
    • 數據分析: 數據建模,數據挖掘,數據可視化,商業分析
    • 人工智能: 機器學習,計算機視覺,無人駕駛
  • 行業應用:
    • 豆瓣:公司幾乎全部的業務均是經過Python開發的
    • 知乎:國內最大的問答社區,經過Python開發(國外Quora)
    • 春雨醫生:國內知名的在線醫療網站是用Python開發的
    • 谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬蟲、Google廣告等項目都在大量使用Python開發
    • YouTube:世界上最大的視頻網站YouTube就是用Python開發的
    • Facebook:大量的基礎庫均經過Python實現的
    • Dropbox:美國最大的在線雲存儲網站,所有用Python實現,天天網站處理10億個文件的上傳和下載
    • Instagram:美國最大的圖片分享社交網站,天天超過3千萬張照片被分享,所有用python開發
    • Redhat:世界上最流行的Linux發行版本中的yum包管理工具就是用python開發的
    • CIA:美國中情局網站是用Python開發的
    • NASA:美國航天局(NASA)大量使用Python進行數據分析和運算
    • 搜狐、金山、騰訊、盛大、網易、百度、阿里、淘寶 、土豆、新浪、果殼等公司都在使用Python完成各類各樣的任務。

2.4 Python解釋器的種類

Python是一門跨平臺的腳本語言,Python規定了一個Python語法規則,實現了Python語法的解釋程序就成爲了Python的解釋器。

  • CPython(ClassicPython,也就是原始的Python實現,須要區別於其餘實現的時候才以CPython稱呼;或解做C語言實現的Python)。這是最經常使用的Python版本。
  • Jython(原名JPython;Java語言實現的Python,現已正式發佈)。Jython能夠直接調用Java的各類函數庫。
  • PyPy(使用Python語言寫的Python)
  • IronPython(面向.NET和ECMA CLI的Python實現)。- IronPython可以直接調用.net平臺的各類函數庫。能夠將Python程序編譯成.net程序。
  • ZhPy(周蟒)(支持使用繁/簡中文語句編寫程序的Python語言)

咱們如今通常廣泛使用的是CPython.

2.5 Python的執行過程

  • Python在執行時,首先會將.py文件中的源代碼編譯成Python的byte code(字節碼),而後再由Python Virtual Machine(Python虛擬機)來執行這些編譯好的byte code。
  • 基於C的Python編譯出的字節碼文件,一般是.pyc格式。

Python的執行過程

2.6 Python版本(2.x和3.x)

Python的版本,目前主要分爲兩大類:

  • Python 2.x的版本的,被稱爲Python2:是目前用的最普遍的,好比Python 2.7.3。

  • Python 3.x的版本的,被稱爲Python3,是最新的版本的,好比Python3.5.4。

Python 2 發佈於 2000 年年末,意味着較之先前版本,這是一種更加清晰和更具包容性的語言開發過程。而先前版本的 Python 應用的是 PEP (Python 加強協議),這種技術規範能向 Python 社區成員提供信息或描述這種語言的新特性。

Python 3 被視爲 Python 的將來,是目前正在開發中的語言版本。做爲一項重大改革,Python 3 於 2008 年年底發佈,以解決和修正之前語言版本的內在設計缺陷。Python 3 開發的重點是清理代碼庫並刪除冗餘,清晰地代表只能用一種方式來執行給定的任務。對 Python 3.0 的主要修改包括將 print 語句更改成內置函數,改進整數分割的方式,並對 Unicode 提供更多的支持。




這篇筆記的參考資料:

相關文章
相關標籤/搜索