Python学海无涯路【第01回】初始Python
目錄
- 1、Python簡介
- 1.1、Python的作者
- 1.2、Python的應用領域
- 1.3、Python的分類
- 1.3.1、Cpython
- 1.3.2、Jyhton
- 1.3.3、IronPython
- 1.3.4、 PyPy(特殊)
- 1.3.4、其它
- 1.4、Python2和Python3
- 2、編碼
- 2.1、ASCII
- 2.2、Unicode
- 2.3、utf-8
- 2.4、GBK和GB2312
- 2.5、UTF-8和GBK的轉換
- 2.5、encode和decode
- 2.6、Python使用的編碼
- 2.7、Python源文件開頭
- 3、注釋
1、Python簡介
1.1、Python的作者
python的創始人為吉多·范羅蘇姆(Guido van Rossum)。1989年的圣誕節期間,吉多·范羅蘇姆為了在阿姆斯特丹打發時間,決心開發一個新的腳本解釋程序,作為ABC語言的一種繼承。
1.2、Python的應用領域
Python可以應用于眾多領域,如:數據分析、組件集成、網絡服務、圖像處理、數值計算和科學計算等眾多領域。目前業內幾乎所有大中型互聯網企業都在使用Python,如:Youtube、Dropbox、BT、Quora(中國知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、騰訊、汽車之家、美團等。互聯網公司廣泛使用Python來做的事一般有:自動化運維、自動化測試、大數據分析、爬蟲、Web 等。
1.3、Python的分類
1.3.1、Cpython
Python的官方版本,使用C語言實現,使用最為廣泛,CPython實現會將源文件(py文件)轉換成字節碼文件(pyc文件),然后運行在Python虛擬機上。
1.3.2、Jyhton
Python的Java實現,Jython會將Python代碼動態編譯成Java字節碼,然后在JVM上運行。
1.3.3、IronPython
Python的C#實現,IronPython將Python代碼編譯成C#字節碼,然后在CLR上運行。(與Jython類似)
1.3.4、 PyPy(特殊)
Python實現的Python,將Python的字節碼字節碼再編譯成機器碼。
1.3.4、其它
Python還有RubyPython、Brython ...等多個版本
1.4、Python2和Python3
語法上Python3并不完全兼容Python2,Python 2里面的相當部分語法在Python 3中已經被棄用,也就是說Python3并不能保證完全運行Python2的語法寫出來的程序,這點和其他語言相比差異比較大。
有種說法是Python2正在逐步的向Python3改變,慢慢的最終向Python3的語法無限接近,有個故事叫溫水煮青蛙,大概可以在這里形容下這件事。
2、編碼
2.1、ASCII
ASCII(American Standard Code for Information Interchange,美國標準信息交換代碼)是基于拉丁字母的一套電腦編碼系統,主要用于顯示現代英語和其他西歐語言,其最多只能用 8 位來表示(一個字節),即:2**8 = 256,所以,ASCII碼最多只能表示 256 個符號。
2.2、Unicode
Unicode(統一碼、萬國碼、單一碼)是一種在計算機上使用的字符編碼。Unicode 是為了解決傳統的字符編碼方案的局限而產生的,它為每種語言中的每個字符設定了統一并且唯一的二進制編碼,規定雖有的字符和符號最少由 16 位來表示(2個字節),即:2 **16 = 65536,
注:此處說的的是最少2個字節,可能更多
Unicode是一個以’U+’字符開頭,后面跟著4位或者5位或者6位十六進制數字
2.3、utf-8
UTF-8,是對Unicode編碼的壓縮和優化,他不再使用最少使用2個字節,而是將所有的字符和符號進行分類:ascii碼中的內容用1個字節保存、歐洲的字符用2個字節保存,東亞的字符用3個字節保存...
UTF-8用三個字節表示中文。
單字節的ASCII碼字符仍然映射的是單字節,而且ASCII編碼方式是UTF-8的子集
2.4、GBK和GB2312
GBK和GB2312是專門為中國人設計的編碼,這兩種編碼中漢字占兩個字節。
2.5、UTF-8和GBK的轉換
一個漢字,utf-8要用三個字節表示,gbk用2個字節表示。
utf-8和gbk之間不能直接轉換,只能通過Unicode轉換,如下圖所示:
2.5、encode和decode
UTF-8或者ASCII碼不過是對應從Unicode到字節的映射方式,既然有映射方式,那么就有映射方向。我們把從Unicode到字節碼(byte string)稱之為encode,把從字節碼(byte string)到Unicode碼稱之為decode 。
2.6、Python使用的編碼
Python2解釋器默認以ASCII編碼去解釋py程序,如果py程序中只含英文,程序執行不受影響,如果含有中文,Python2將無法執行。
所以用Python2解釋器時,程序里需加上下面一句代碼,告訴Python2解釋時要按照UTF-8的編碼去解釋。
# -*- coding:utf8 -*-Python3無此限制,Python3默認用utf-8。
2.7、Python源文件開頭
#!/usr/bin/env python #-*- coding: utf-8 -*-第一行注釋事為了告訴Linux/OS X系統,這是一個Python可執行程序,Windows系統會忽略這個注釋;
第二行注釋市為了告訴Python解釋器,按照UTF-8編碼讀取源代碼,否則,在源代碼中寫的中文輸出可能會有亂碼
3、注釋
單行注視:# 被注釋內容
多行注釋:""" 被注釋內容 “”"
總結
以上是生活随笔為你收集整理的Python学海无涯路【第01回】初始Python的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 云原生系列二【Kubernetes】Ku
- 下一篇: 【全网力荐】堪称最易学的Python基础