1

したがって、次のようにデータが設定されたこのファイルがあります。

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

各パーツを 3 つの異なるリストに分ける必要があります。1 つは名前用、1 つは最初の番号用、もう 1 つは 2 番目の番号用です。

しかし、よくわかりません。これらの部分を正確に抽出するにはどうすればよいですか? また、最初の行で、異なる部分 (名前、最初の番号、2 番目の番号) のそれぞれを 1 つのタプルにするタプルを作成したいとしましょう。

その情報を抽出する方法がわかりません。テキストファイルの読み書きの方法を学んだばかりなので、まったく無知です。

編集: 注として、テキスト ファイルは既に存在します。私が取り組んでいるプログラムは、私がリストした方法でフォーマットされたデータを持つテキスト ファイルを読み取る必要があります。

4

2 に答える 2

5

各行を空白で分割できます。

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

names, firstnums, secondnums = zip(*rows)

zip(*iterable)3 つの列を 3 つのリストに再配置します。

于 2012-12-04T21:49:32.813 に答える
0

モジュール Pickle はここで理想的ではないでしょうか? 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
于 2012-12-04T22:02:42.470 に答える