[英]storing one line of a text file as an array python
我有一個文本文件,其內容如下:
a 1 1
b 1 1
c 1 1
d 1 1
e 1 1
f 1 1
我希望像 ["a", "1", "1"] 等那樣輸出它,但它目前輸出為
[a 1 1\n]
[b 1 1\n]
[c 1 1\n]
[d 1 1\n]
[e 1 1\n]
[f 1 1\n]
我的代碼是
import csv
tname = input("player 1 enter your team name ")
x = "./" + tname + ".txt"
with open (x, "r") as r:
reader = csv.reader(r)
for row in r:
spec = [row]
print (spec)
無需使用csv
模塊,只需依次讀取所有行,用空格和 append 將它們分隔到您的 output 列表中:
with open('input.txt', 'r') as f:
lines = f.readlines()
output = []
for line in lines:
output = output + line.split()
print(output)
這給了你:
['a', '1', '1', 'b', '1', '1', 'c', '1', '1', 'd', '1', '1', 'e', '1', '1', 'f', '1', '1']
期望的結果是什么存在一些歧義。 所以三個可能的答案:
with open('somefile.txt', 'r') as f:
for row in f:
print(row.strip().split())
# -> ['a', '1', '1']
['b', '1', '1']
['c', '1', '1']
['d', '1', '1']
['e', '1', '1']
['f', '1', '1']
with open('somefile.txt', 'r') as f:
print([row.strip().split() for row in f])
# -> [['a', '1', '1'],
['b', '1', '1'],
['c', '1', '1'],
['d', '1', '1'],
['e', '1', '1'],
['f', '1', '1']]
with open('somefile.txt', 'r') as f:
print([item for row in f for item in row.strip().split()])
# -> ['a', '1', '1', 'b', '1', '1', 'c', '1', '1', 'd', '1', '1', 'e', '1', '1', 'f', '1', '1']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.