015 Python語法之檔案結束

2021-08-03 19:58:07 字數 1775 閱讀 8332

用二進位制(「rb」)進行開啟檔案

然後用decode(「gbk」, errors=」ignore」)

這個時候就可以看出用什麼對資料進行分割的了

b」abcd\x64」這個是二進位制資料,列印出來為b』abcdd』

二進位制資料不能對某個元素賦值,和字串一樣

abcd是明確字元,\x開頭的是16進製制的字元

mystr = "鋤禾日當午,汗滴禾下土,誰知盤中餐,粒粒皆辛苦。"

print

(mystr.encode("utf-8"))

print("鋤禾日當午".encode("utf-8").decode("utf-8",errors="ignore"))
進製描述b

二進位制o

八進位制x

十六進製制

進製注意點

進製不能超過進製最大數

加密解密可以通過資料挪位

加密

# 1. 路徑

orginpath = r"g:\尹成\mine\data\day04\機鋒2300w完整版\jfemail.txt"

objectpath = r"g:\尹成\mine\data\day04\機鋒2300w完整版\jfemailjiami.txt"

# 2. 檔案

orginfile = open(orginpath, "rb")

objectfile = open(objectpath, "wb")

# 3. 資料處理

while

true:

ch = orginfile.read(1)

ifnot ch:

break

if chr(ord(ch)) != "\n": # 如果是換行就不加密

ch = bytes(chr(ord(ch) ^ 2), encoding="utf-8")

objectfile.write(ch)

# 4. 檔案關閉

orginfile.close()

objectfile.close()

解密
# 1. 路徑

orginpath = r"g:\尹成\mine\data\day04\機鋒2300w完整版\jfemailjiami.txt"

objectpath = r"g:\尹成\mine\data\day04\機鋒2300w完整版\jfemailjiemi.txt"

# 2. 檔案

orginfile = open(orginpath, "rb")

objectfile = open(objectpath, "wb")

# 3. 資料處理

while

true:

ch = orginfile.read(1)

ifnot ch:

break

if chr(ord(ch)) != "\n": # 如果是換行就不加密

ch = bytes(chr(ord(ch) ^ 2), encoding="utf-8")

objectfile.write(ch)

# 4. 檔案關閉

orginfile.close()

objectfile.close()

二進位制加密

二進位制加密漢字需要進行正規表示式處理,因為漢字佔兩個位元組

純英文沒有問題

1. 通過字典進行雜湊演算法加速,原理是通過鍵拿值

今天做了一些優化的問題,記憶體不夠真傷。

015 python函式式程式設計 生成器 yield

在乙個函式中經常使用return關鍵字返回資料,但是有時候會使用yield關鍵字返回資料。使用yield關鍵字的函式返回的是乙個生成器 generator 物件,生成器物件是一種可迭代物件。def square num 定義引數函式 n list for i in range 1,num 1 ret...

python語句結構 python學習之結構語句

一 迴圈語句 1.1 for x in rang n rang n 生成左閉右開區間的序列 1.2 while x 條件n 二條件語句 if 條件表示式 elif 表示式 elif 表示式 else 三 break continu 四 函式 4.1 定義 def func 引數列表 if not i...

012 Python語法之檔案操作

大多數情況下我們要處理的檔案都是文字檔案 其他檔案都是二進位制進行讀寫的 open函式開啟檔案file1 open 檔案路徑 open引數詳解 第乙個引數引數路徑 第二個引數開啟方式 r 唯讀 w 只寫 rb 二進位制讀 a 追加寫入 wb 二進位制寫 返回值是乙個檔案物件 read函式file1....