您好,我無法編寫然後從文件中讀取確切的數據。由於Python中的 r,無法從文件中檢索正確的數據
什麼我做的是先轉換list
爲string
,然後將其寫入到文件
S = [63, 16, 13, 30, 22, 13, 99, 68, 75, 91, 73, 80, 90]
現在,如果我這樣做是爲了把它轉換爲字符串,
UpdatedPlainText = ''.join(chr(s) for s in S)
print("This is the Data:", UpdatedPlainText)
數據將由於存在兩個int
值13
原始List
,這等於\r
輸出:
cDK[IPZ the Data: ?►
我知道這只是顯示這樣的,但是原始數據仍然存在。
的數據可被檢索回用這個, 這裏數據是拳頭轉換爲整數打印之前,
L = list(ord(s) for s in UpdatedPlainText)
print(L)
輸出:
[63, 16, 13, 30, 22, 13, 99, 68, 75, 91, 73, 80, 90]
但
而不是直接轉換數據回integer
from
String
, 如果我首先將
UpdatedPlainText
的值寫入一個文件,
PlainText = open('uText.txt', 'w')
PlainText.write(UpdatedPlainText)
PlainText.close()
然後read
這個文件,
PlainText = open('uText.txt', 'r')
PlainText = PlainText.read()
,然後打印從文件中的數據,
L = list(ord(s) for s in PlainText)
print(L)
輸出會有所不同,
[63, 16, 10, 30, 22, 10, 99, 68, 75, 91, 73, 80, 90]
正如你所看到的,值13
被替換爲10
,這是由於\r
,相當於13
我該如何解決這個問題? 如何防止13
轉換爲\r