2

コンマで区切られた整数の行列を含むファイルを読み込んでいます。これまでのところ、私は持っています:

def open_file(file):
    with open('network.txt') as f:
        Alist = []
        for line in f:
            part = []
            for x in line.split(','):
                part.append(int(x))
            Alist.append(part)
    print Alist

open_file(file)

これは値を正常に表示しますが、それらを直線で表示します。それは私が必要とする方法ではありません。整数の「行」ごとに、新しい行を開始して、6x6 の行に積み上げたいと考えています。コードのさまざまな部分で改行を印刷しようとしましたが、うまくいきませんでした。代わりに、数値を表示する前に、ファイル全体で検出された行数に等しい改行を印刷します。行列を扱う場合、コンマを削除するのが最善でしょうか?

また、マトリックスの作成時に、1,1 と言って開始し、次に任意の隣接 (1,2 および 2,1) を見つけるつもりです。私の検索では使用可能な結果が返されなかったため、これをどのように達成するかについて正しい方向を示してもらえますか。私は簡単に間違った方法で検索している可能性があります。

これは宿題です。

4

2 に答える 2

3

これはあなたが探しているものですか?

for row in Alist:
    print row

グリッド内の隣接するセルに移動するには、行または列のインデックスをインクリメントするだけです。Alist[0][0]から右に移動すると になりAlist[0][1]、下に移動するとAlist[1][0].

于 2013-03-12T22:57:51.743 に答える
1

または、もう少し「pythonic」な方法

print "\n".join(str(row) for row in Alist)
于 2015-05-21T11:50:53.217 に答える