本文目錄一覽:
- 1、python編程(三級)1、編碼、數制
- 2、python3是什麼
- 3、如何從Python 3.4 升級到 Python 3.5
- 4、python2.0與python3.0的區別。
- 5、python和python3哪個好
python編程(三級)1、編碼、數制
在計算機中使用的是二進制,(為什麼呢,因為二進制計算簡單,可以用電路表示等等很多優點)。但是二進制對閱讀和使用是不友好的,因此需要將二進制轉換為人類使用的語言,英語,中文等,這就是編碼。
最初的編碼就是ASCII編碼,美國信息交換碼。它使用一個字節,8位二進制,可以表示128個符號。常用的1-9,26個字母以及一些英語符號等。
ascii表是不能表示中文的,因此中文也有專門的編碼,諸如GB2312,GBK等。其它國家也有類似編碼,因此為了方便信息的交流,也就有了統一編碼,Unicode,又叫萬國碼。unicode用0-65535來表示所有字符,Unicode用2-4個字節存儲。不同的存儲方式,又不同的編碼,這就是UTF-8,UTF-16,UTF-32。utf-8根據字符數字的大小,來決定存儲字節,存儲英文字符時用1個字節,存儲漢字時用2個字節。utf-16,兩個字節,utf-32,四個字節。
python3 在內存中使用的是Unicode,萬國碼,默認的編碼是utf-8。
chr() ,轉換為對應Unicode表字符
ord(),轉換為對於Unicode表數字
encode(),編碼,將str轉換為字節流
decode(),解碼,將字節流轉換為str
計算機存儲數據的格式是二進制,日常和數學中使用的數字是十進制,為了表達簡化,因此有了十六進制、八進制。
二進制—-十進制—-八進制—》十六進制
10000001 —》129 —》201—》81
從上式可以看出來,進制越大,表達更大數時更簡化。
二進制轉十進制 ,按權展開相加
十進制轉二進制,除基取余
二進制轉八進制 ,從右往左,取3位轉換為十進制得到即為8進制,不足3位左邊補0。
八進制轉二進制,每位展開得到3個二進制位
二進制轉十六進制,,從右往左,取4位轉換為十進制得到即為16進制,不足3位左邊補0。
十六進制轉二進制,每位展開得到四個二進制位
int() ,
hex(),轉換為16進制
bin(),轉換為二進制
oct(),轉換為八進制
python3是什麼
python3指的是3.5及以上版本。
目前主流的庫基本上都已支持Python3,或積極向Python3遷移,Python後面的新特徵也只會在Python3中體現。
如何從Python 3.4 升級到 Python 3.5
1、首先 我們要確定一下我們當前操作系統中的Python版本.我們在Ubuntu中使用Ctrl+Alt+T 快捷鍵 調出 終端窗口。然後在終端中輸入Python。
2、在上面的步驟中,我們看到我們的Python版本是2.7.12 這是Ubuntu中默認安裝的Python版本 。接下來我們執行 sudo apt-get python3 命令 這時候 終端會提示我們需要管理員密碼 輸入即可。
3、稍等片刻 我們的Python3 已經安裝完成了 ,但是如果這時候我們輸入Python並且回車 我們會發現 我們的Python版本仍然是2.7.12 這個時候我們需要切換Python的版本。我們在終端中輸入 alias python=python3 回車 然後我們再輸入Python 這個時候的版本就已經變成Python3了。
4、安裝完成之後我們寫一句簡單的Python腳本 來驗證一下我們安裝的Python是否能夠正常使用。
python2.0與python3.0的區別。
Python2.0與Python3.0主要區別在於以下幾個方面:
1、輸出
Python2.0使用print關鍵字進行輸出,比如:print “Hello”;
Python3.0使用print()函數,比如print(“Hello”)。
2、輸入方面
Python2.0使用raw_input()函數,比如:name=raw_input(“請輸入你的名字:”);
Python3.0使用input()函數,比如:name=input(“請輸入你的名字:”)。
3、字符串的編碼格式
Python2.0默認採用ASCII編碼對輸入的字符串進行編碼;
而Python3.0默認採用Unicode編碼對字符串進行編碼。
4、格式化字符串的方式
Python2.0用%佔位符進行標準化格式輸出字符串,比如:“Hello,%s” % (“World”);
Python3.0用format()函數,比如:”Hello,{}“.format(“World”)。
5、源文件的編碼格式
Python2.0默認採用ASCII,因此使用中文時要在源文件開頭加上一行注釋:# — coding: utf-8 –;
Python3.0默認採用utf-8。
python和python3哪個好
許多剛入門 Python 的朋友都在糾結的的問題是:我應該選擇學習 python2 還是 python3,Python 3.7 已經發布了,目前Python的用戶,主要使用的版本 應該是 Python3.6 和 Python2.7 ,那麼是不是該轉到 Python 3.7 呢?
首先先說一下python2與python3的選擇
許多剛入門 Python 的朋友都在糾結的的問題是:我應該選擇學習 python2 還是 python3?
對此,回答是:果斷 Python3 !(推薦學習:Python視頻教程)
可是,還有許多小白朋友仍然猶豫:那為什麼還是有人推薦我學習 Python2 呢?
其實,無外乎以下一些原因:
1. 無論是 Python 還是 Pip 的下載量,都是 2 比 3 多,可見 2 仍然是主流
錯!造成 2 的下載量比 3 多的原因很多,但其中很重要的一條是,絕大多數操作系統(Linux 發行版)默認安裝的仍然是 Python 2。人都是有惰性的,許多人懶得折騰就直接用了2 了。但是,2 在下降,3 在上升這是不爭的事實。擁抱未來才是王道啊。
2. Python 2 和 3 不兼容,學了 3 還得學 2
錯!Python 提供了許多輔助的庫,可以讓你分分鐘寫出兼容 3 和 2 的代碼,你要做的只是引入幾個包而已,幾乎不用修改代碼。實在萬不得已非得用 2,你有 3 的基礎,幾乎不需要什麼額外的學習,也能立刻上手 2。
3. 許多庫還停留在 Python 2,Python 3 用不了
錯!說出這話的這位仁兄,你是有多久沒有關注 Python?太不了解行情了。
根據 py3readiness 的最新統計結果,Pip 上最流行的(下載量最高的)前 360 個庫,已經有345 個支持 Python 3 了
python3_readiness.png
其中,只剩下 15 個(大約 4%)庫暫時還不支持 Python 3。你究竟是有多執着,非要等到 100% 才肯用 3?
你的工作能有多特別?非得用2才能搞定?即使真遇到這樣的情況,使用 virtualenv, conda 這些成熟的工具,分分鐘在你的機器上另起一個 2 的環境,和 3 完美兼容,你還需要擔心什麼?
擁抱 Python 3 吧!
選擇 Python3.6 還是 Python 3.7
Python 3.7 已經發布了,目前Python的用戶,主要使用的版本 應該是 Python3.6 和 Python2.7 ,那麼是不是該轉到 Python 3.7 呢?
首先大家要知道Python 3.7 是對 Python 3.6 的升級。Python官方對 3.7 的新特性描述鏈接如下:
我們最需要注意的是 相對於 3.6 來說, 3.7 在語法上幾乎是完全 兼容, 除了如下這一點:
Backwards incompatible syntax changes:
async and await are now reserved keywords.
這段話,指出了 3.7 的唯一不兼容 3.6 的地方就是 async 和 await 變成了Python語言中保留的關鍵字了。
什麼意思?
就是 async 和 await 這兩個詞 就像 import, for, while 這些詞一樣, 是系統保留特殊用途的關鍵字。
也就是說在Python 3.7 裡面你不能使用定義 變量、函數之類的 名字
比如,我像下面這樣定義變量和函數:
async = 1
def await():
pass
使用Python3.6 運行,沒有問題, 而在Python 3.7 裡面就會報如下錯誤
SyntaxError: invalid syntax
如何選擇?
所以,如果項目 目前使用的是 Python 3.6 ,而且項目又比較大的話,個人建議不用太着急轉到 3.7 上去。 因為不知道你的項目代碼和依賴的第三方庫的代碼是不是做過3.7的兼容性測試, 畢竟 3.7 剛剛出來不久。
3.7 的 pip 執行
pip install psycopg2-binary
安裝就會失敗,提示 Error: pg_config executable not found
而 3.6的pip安裝就沒有問題。
所以,我們最好等到3.7被普遍使用了,再轉過去。
現在要轉到Python3.7, 除非 有你們項目特別渴望使用的 Python3.7 裡面的新特性 。 如果是那樣的話,一定要 做一個對老的代碼覆蓋比較充分的測試,防止上線運行的時候出現問題。
用Python2.7怎麼辦呢?
而如果目前 項目使用的是 Python 2.7 運行,那 主要是 Python 2 和 Python 3 之間 的 遷移問題了, 語法差異有些大。
如果項目聲明周期比較長的話, 建議還是 要在合適的時候升級到 Python3。 因為畢竟Python2 在2020年官方就不再維護,到時候出現什麼安全漏洞之類的問題,就比較麻煩了。 或者是 有好用的第三方庫, 這些庫可能沒有 Python2 的版本,那樣就更麻煩了。
如果決定吧項目從Python2 升級到 Python3, 目前可以先升級到Python3.6 , 因為業界目前對 3.6 的支持還是比較普遍的。 等以後 3.7 支持比較普遍後,再做升級不遲。
這就是小編今天要分享的內容,希望可以能給大家帶來幫助。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/279051.html