2016-04-17 11 views
0

に行列に入れ、この:は私が持っているTXTを読み、私のTXTでのpython

111111111111111111111 
101000100000010000001 
101011111011111110101 

私は、行列の行としてテキストファイルの各行を配置すると、それぞれ0と1には、配列要素があります。例えば、M [0] = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 ]

そして、を含むM [1] [1]にアクセスできました。

最近私はフォーラムで同様の質問をしてくれました。スタッフは私に非常に控えめなコードを教えてくれてとてもうまく解決しました。目標は1つのリストに変わることでした。私の疑問に誰かが私に機能を参照していくつかのウェブサイト、またはあなたはすでに実験があり、初心者にお勧めの本、中間体を渡すことができるだけでなく

with open ('arq.txt') the buffer: 
    l = list (map (int, buffer.read(). replace ('\ n', ''))) 
print l 

:怒鳴るコードを次の。ビデオレッスン。私はhttp://www.cplusplus.com/reference/のようないくつかのウェブサイトを検索してみましたが、Pythonに似たものは何も見つかりませんでした。公式のPythonには、各関数の例はありません。

答えて

0

あなたはこれを試すことができます。

with open ('arq.txt') as buffer: 
    mat = list(map(int, line.strip()) for line in buffer) 
print mat 
+0

「とValueError:空の区切り」 私はこのマップとスプリット機能を理解しようとしましたが、私の英語は非常に良いではありません。私は私の試みでこの同じ誤りを抱えていた。ドキュメントには、使用例がいくつかありますので、私は理解するのにしばらく時間がかかります。 – ialsafid

+0

@ialsafid、これは今良いと思うよ。 – smac89

+0

いいね! @ Smac89 numpyを使うと、簡単に視覚的に面白く印刷できます - >> ** print(np.matrix(A))** – ialsafid

1

さてさて、これは実際には非常に簡単です。最高のライナーコードを探しているわけではありませんが、理解しやすいです。

これを試してみてください:

m = {} 
with open("args.txt") as f: 
    data=f.read().split() 
    for x in range(len(data)): 
    m[x]=list(data[x]) 
print(m) 
1
mat = [] 
with open('data.txt') as fin: 
    for line in fin: 
     row = [int(item) for item in line.strip()] 
     mat.append(row) 
関連する問題