base64 是經(jīng)常使用的一種加密方式,在 Python 中有專門的庫支持。
成都創(chuàng)新互聯(lián)公司專注于興國企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城網(wǎng)站建設(shè)。興國網(wǎng)站建設(shè)公司,為興國等地區(qū)提供建站服務(wù)。全流程按需制作,專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
本文主要介紹在 Python2 和 Python3 中的使用區(qū)別:
在 Python2 環(huán)境:
在 Python3 環(huán)境:
Python3 中有一些區(qū)別,因為 Python3 中字符都是 unicode 編碼,而 b64encode 函數(shù)的參數(shù)為 byte 類型,所以必須先轉(zhuǎn)碼。
以上就是本文的全部內(nèi)容,如果覺得有用的話歡迎 點贊 和 轉(zhuǎn)發(fā) ,多謝。
推薦閱讀:
1、Python2之前是非常受歡迎的,現(xiàn)在很多軟件公司依然使用的是Python2,不過由于越來越多的公司開始從Python2遷移到3,因此初學(xué)者可以避免花費更多的時間學(xué)習(xí)過去的版本了。
2、Python2和Python3之間有一些是無法互相兼容的,現(xiàn)在很多開發(fā)人員都在使用Python3開發(fā)庫,許多老的基于Python2的開發(fā)包依然是無法兼容的,想要將Python2庫移植到Python3上,對于初學(xué)者來說還是比較困難的事情。
3、Python3有更好的Unicode編碼支持在Python3的語法之中,默認(rèn)文化字符串就是Unicode,而Python2默認(rèn)的存儲為ASCII,而且Unicode比ASCII更加通用,可以提供更多的選擇。
4、Python3版本改進了整數(shù)除法的問題,在Python2中如果你在小數(shù)點后面寫任何一個數(shù)字,計算會自動四舍五入的。而使用Python3的情況下是不需要擔(dān)心這種情況發(fā)生的。
5、兩個版本之間有不同的打印語句聲明語法,是語法差異,不影響Python的功能。
1、一般來說,聲明編碼格式在腳本中是必需的。2、如果Python源碼文件沒有聲明編碼格式,Python解釋器會默認(rèn)使用ASCII編碼。但出現(xiàn)非ASCII編碼的字符,Python解釋器就會報錯。
1、Python 采用代碼縮進和冒號( : )來區(qū)分代碼塊之間的層次。2、在 Python 中,對于類定義、函數(shù)定義、流程控制語句、異常處理語句等,行尾的冒號和下一行的縮進,表示下一個代碼塊的開始,而縮進的結(jié)束則表示此代碼塊的結(jié)束。3、Python 中實現(xiàn)對代碼的縮進,可以使用空格或者 Tab 鍵實現(xiàn)。但無論是手動敲空格,還是使用 Tab 鍵,通常情況下都是采用 4 個空格長度作為一個縮進量(默認(rèn)情況下,一個 Tab 鍵就表示 4 個空格)。4、對于 Python 縮進規(guī)則,初學(xué)者可以這樣理解,Python 要求屬于同一作用域中的各行代碼,它們的縮進量必須一致,但具體縮進量為多少,并不做硬性規(guī)定。
正確示例代碼:
錯誤示例代碼:
Python中使用 # 進行注釋,我們在使用# 的時候,# 號后面要空一格在行內(nèi)注釋的時候,中間應(yīng)該至少加兩個空格
print("你好,世界") # 注釋
** 使用的一般性原則:**
1、在二元運算符兩邊各空一格,算術(shù)操作符兩邊的空格可靈活使用,但兩側(cè)務(wù)必要保持一致2、不要在逗號、分號、冒號前面加空格,但應(yīng)該在它們后面加(除非在行尾)3、函數(shù)的參數(shù)列表中,逗號之后要有空格4、函數(shù)的參數(shù)列表中,默認(rèn)值等號兩邊不要添加空格5、左括號之后,右括號之前不要加添加空格6、參數(shù)列表, 索引或切片的左括號前不應(yīng)加空格
使用的一般性原則:
1、編碼格式聲明、模塊導(dǎo)入、常量和全局變量聲明、頂級定義和執(zhí)行代碼之間空兩行2、頂級定義之間空兩行,方法定義之間空一行3、在函數(shù)或方法內(nèi)部,可以在必要的地方空一行以增強節(jié)奏感,但應(yīng)避免連續(xù)空行
1、導(dǎo)入總應(yīng)該放在文件頂部,位于模塊注釋和文檔字符串之后,模塊全局變量和常量之前。
2、導(dǎo)入應(yīng)該按照從最通用到最不通用的順序分組,分組之間空一行:
3、每個 import 語句只導(dǎo)入一個模塊,盡量避免一次導(dǎo)入多個模塊
命名規(guī)范這一塊的大家應(yīng)該都比較熟悉了,但是不同的編程語言之間的明明規(guī)范也是有所區(qū)別的~
Python命名建議遵循的一般性原則:
引號使用的一般性原則:
Python跟其他幾個主流編程語言的分號使用區(qū)別很大Python的代碼末尾不需要加分號,而Java和C#等都需要添加
不要在行尾添加分號,也不要用分號將兩條命令放在同一行,例如:
Python學(xué)習(xí)日記
Python2.0與Python3.0主要區(qū)別在于以下幾個方面:
1、輸出
Python2.0使用print關(guān)鍵字進行輸出,比如:print “Hello”;
Python3.0使用print()函數(shù),比如print("Hello")。
2、輸入方面
Python2.0使用raw_input()函數(shù),比如:name=raw_input("請輸入你的名字:");
Python3.0使用input()函數(shù),比如:name=input("請輸入你的名字:")。
3、字符串的編碼格式
Python2.0默認(rèn)采用ASCII編碼對輸入的字符串進行編碼;
而Python3.0默認(rèn)采用Unicode編碼對字符串進行編碼。
4、格式化字符串的方式
Python2.0用%占位符進行標(biāo)準(zhǔn)化格式輸出字符串,比如:“Hello,%s" % ("World");
Python3.0用format()函數(shù),比如:”Hello,{}“.format("World")。
5、源文件的編碼格式
Python2.0默認(rèn)采用ASCII,因此使用中文時要在源文件開頭加上一行注釋:# -- coding: utf-8 --;
Python3.0默認(rèn)采用utf-8。
對于單個字符的編碼,Python提供了ord()函數(shù)獲取字符的整數(shù)表示,chr()函數(shù)把編碼轉(zhuǎn)換為對應(yīng)的字符:
最常用的編碼是UTF-8,如果沒有特殊業(yè)務(wù)要求,請牢記僅使用UTF-8編碼。
在爬蟲中會經(jīng)常遇見,需要用encode和decode來進行互相轉(zhuǎn)碼
str轉(zhuǎn)bytes
注意,含有中文字符的str不能用acsii格式轉(zhuǎn)碼
bytes轉(zhuǎn)str
** 程序中經(jīng)常會遇到個別字符轉(zhuǎn)碼不成功而報錯,因此在decode方法中需要這個參數(shù)errors='ignore'忽略錯誤的字節(jié)
注意格式化的數(shù)據(jù)格式
網(wǎng)站標(biāo)題:python2編碼函數(shù) python2編碼問題
網(wǎng)頁路徑:http://chinadenli.net/article24/dodioce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、用戶體驗、App開發(fā)、、虛擬主機、網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)