Pythonでテキストファイルから特定の列を読み取る 質問する

Pythonでテキストファイルから特定の列を読み取る 質問する

次のような数字で構成された表を含むテキスト ファイルがあります。

5 10 6

6 20 1

7 30 4

8 40 3

9 23 1

4 13 6

たとえば、2 番目の列にのみ含まれる数字が必要な場合、その列をリストに抽出するにはどうすればよいでしょうか?

ベストアンサー1

f=open(file,"r")
lines=f.readlines()
result=[]
for x in lines:
    result.append(x.split(' ')[1])
f.close()

リスト内包表記を使って同じことを行うことができます

print([x.split(' ')[1] for x in open(file).readlines()])

ドキュメントsplit()

string.split(s[, sep[, maxsplit]])

文字列の単語のリストを返しますs。オプションの 2 番目の引数 sep が存在しないか None の場合、単語は任意の空白文字の文字列 (スペース、タブ、改行、リターン、フォームフィード) で区切られます。2 番目の引数 sep が存在し、None でない場合は、単語の区切りとして使用する文字列を指定します。返されるリストには、文字列内の区切りの重複しない出現回数よりも 1 つ多い項目が含まれます。

したがって、私が使用したスペースを省略して、次のように実行できますx.split()が、これによりタブと改行も削除されるので注意してください。

おすすめ記事