Python第五次筆記

2021-10-10 17:27:55 字數 3030 閱讀 5828

import hashlib

md=hashlib.md5(

)md.update(

"你好"

)md=md.hexdigest(

)print

(md)

出現以下錯誤:

d:\pycharmprojects\untitled\venv\scripts\python.exe d:\pycharmprojects\untitled\myself\test2.py

traceback (most recent call last)

: file "d:\pycharmprojects\untitled\myself\test2.py"

, line 4,in

md.update(

"你好"

)typeerror: unicode-objects must be encoded before hashing

由上圖可知我們是沒有對字串進行編碼,因為update()的括號裡不支援將字串物件引入,要將update括號裡的字串以一種編碼格式(最好是utf-8)進行編碼

import hashlib   #匯入hashlib模組

md=hashlib.md5(

)#將hashlib.md5的演算法賦值給md

md.update(

"你好"

.encode(

'utf-8'))

#先將你好這個字串以utf-8編碼轉換成bytes(位元組)格式,再存入到md變數中,因為update中只能存入bytes(位元組)

md=md.hexdigest(

)#hexdigest(…) 以16進製制形式返回加密內容

print

(md)

#結果:7eca689f0d3389d9dea66ae112e5cfd7

import json  #匯入json模組
json 格式 字串

""

#js python

#字串"" 字串

#陣列【】 列表/元組

#物件 字典

#true/fales true/fales

import json

dic=

print

(dic)

#執行結果:

json.dumps()#對資料進行編碼,把資料轉換成json格式

# 寫入 json 資料

with

open

('data.json'

,'w'

)as f:

json.dump(data, f)

loads載入為python物件

json.loads()#對資料進行解碼,從json格式轉換成python資料.

# 讀取資料

with

open

('data.json'

,'r'

)as f:

data = json.load(f)

python標準異常

baseexception:所有異常的父類

systemexit:直譯器請求退出

keyboardinterrupt:使用者中斷執行(通常ctrl+c)

exception:常規錯誤父類

nameerror: name 『a』 is not defined

tyeperror: can』t convet 『int』 object to str implictly

indexerror: list index out of range

syntaxerror: unexpected eof while parsing

indentationerror: unexpected indent

filenotfounderror:[errno 2] no sunch file or directory: 『a.txt』

importerror: no module named 『mathss』

attributeerror:『str』 object has no attribute』abc』

try

:#編寫又可能錯誤的**

a='100'

except exception as e:

#當**有異常時執行,無異常時不執行

#作用:1.錯誤時只提示,不中斷

# 2.寫入錯誤日誌

# 3.補救措施,讓之後的**正常執行

print

("有%s錯誤了!原因是:%s "

%(exception,e)

)else

:#只當程式正常執行(可選)

print

("一切正常!"

,"a="

,a)finally

:#不論是否報錯都會執行

for i in

range(5

):print

(i)

name =

"shenjie"

assert name ==

"shenjie"

,nameerror(

"使用者名稱不正確!"

)age =

19class

ageerror

(exception:

)"""docstring for classname """

pass

age =

17if age <18:

raise ageerror(

"您的年齡太小,不允許進入娛樂場所!"

)

2018 9 7第五次筆記

這次筆記是接著上上一次筆記繼續介紹基本linux命令的。5.mv move,移動 作用 在目錄建移動檔案,重新命名檔案,在需要的情況下,可以移動並重命名。基本格式 mv 原始檔pathname 目的檔案pathname 下圖是mv命令的結果顯示 wb ubuntu wb ls 1.txt arm c...

python第五次筆記 物件導向

一種程式設計思想,是針對大型程式,複雜邏輯開發時使用的程式設計思想。是一種設計者思維。抽象 把看著像的東西,統稱為一類。封裝 將屬性 變數 和方法 函式 定義列表中,可以隱藏部分或全部資料 繼承 讓子類繼承父類的所有公有的屬性和方法。多型 讓同乙個方法在不同類中實現不同功能。類 class 用來描述...

python物件導向 第五次筆記

物件導向 一種程式設計思想,是針對於大型程式,複雜邏輯開發時使用的程式設計思想 抽象 把看著像的東西,統稱為一類 封裝 將屬性 變數 和方法 函式 定義到類中,可以隱藏部分或全部資料。繼承 讓子類繼承父類的所有公有的屬性和方法。多型 讓同乙個方法在不同類中實現不同的功能 類 用於建立物件的模版。屬性...