簡體   English   中英

Python 3:是否從.txt文件提取數據?

[英]Python 3: Extracting Data from a .txt File?

因此,我有這個文件,其數據設置如下:

Bob 5 60
Carl 7 80
Rick 8 100
Santiago 7 30

我需要將每個部分分成三個不同的列表。 一個代表名字,一個代表第一個數字,另一個代表第二個數字。

但是我不太了解,我究竟該如何提取這些部分? 另外,假設我想用第一行將每個不同部分(名稱,第一個數字和第二個數字)的元組做成一個元組?

我只是不知道如何提取這些信息。 我剛剛學會了如何讀寫文本文件...所以我一無所知。

編輯:作為說明,該文本文件已經存在。 我正在使用的程序需要讀取文本文件,該文件的數據格式與我列出的方式相同。

您可以在空白處分割每一行:

with open(yourfile) as f:
    rows = [l.split() for l in f]

names, firstnums, secondnums = zip(*rows)

zip(*iterable)將3列重新排列為3個列表。

泡菜模塊在這里不是理想的選擇嗎? Pickle提供了Python功能來加載和保存需要在Python中“可用”的東西,因此Pickle可以加載它並為您提供您正在嘗試的實際容器,而不僅僅是從文本文件中導入字符串並進行解析。跟...共事。

例:

import pickle

myList = ["Bob", 1, 2]
listToBeSaved = pickle.dumps(myList) # write this data to your save file
#insert code where you work with the file and save it
#.........    
#upon needing to open and work with this file
listToBeLoaded = open(fileYouWroteTo)
listTranslated = pickle.loads(listToBeLoaded) # turns the loaded data back into a proper list

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM