我們在想要寫自己的小程式時,比如打卡小程式(超連結點選跳轉),我們需要儲存一些簡單的資料,這時候如果我們去研究資料庫,如SQL,MySQL就顯得畫蛇添足了,最實用的策略就是我們直接將執行後得到的資料結果儲存在txt
檔案中,下次呼叫程式的時候直接讀取txt
檔案中的資料進行操作即可。但是在這個過程中我們會遇到一個嚴重的問題,就是我們寫入txt
檔案的資料通常是以str
字元的形式寫入的,並且讀取的時候也是以字元的形式讀取的,也就是說如果我們將一個列表資料以字元的形式寫入txt
檔案後,下次從txt
檔案讀取出來的資料型別變為了str
型別,從而無法進行我們需要的運算操作,這時就會十分棘手,對此,我們這裡介紹一種能夠將從txt
檔案中讀取到的str
型別資料轉換為list
資料型別的方法。
程式碼如下:
class Debug:
def mainProgram(self):
list1 = [[2, 0], [4, 0]]
print(type(list1)) # <class 'list'>
print(list1) # [[2, 0], [4, 0]]
list1 = str(list1)
print(type(list1)) # <class 'str'>
print(list1) # [[2, 0], [4, 0]]
if __name__ == "__main__":
main = Debug()
main.mainProgram()
我們先建立一個list
物件並對這個list
物件進行str
資料型別轉換模擬出從txt
檔案中讀取到的資料。從上面的程式碼輸出結果我們可以看到,list
型別資料已經成功被轉換為了str
型別的資料。接下來我們使用ast
模組實現str
資料型別到list
資料型別的轉換。程式碼如下:
import ast
class Debug:
def mainProgram(self):
list1 = [[2, 0], [4, 0]]
list1 = str(list1)
list1 = ast.literal_eval(list1)
print(list1) # [[2, 0], [4, 0]]
print(type(list1)) # <class 'list'>
if __name__ == "__main__":
main = Debug()
main.mainProgram()
我們可以看到獲取到的資料型別已經從str
變為了可以進行運算操作的list
型別。
如果大家覺得有用,請高擡貴手給一個贊讓我上推薦讓更多的人看到吧~