1

簡単な質問があります。stackoverflowに投稿すると申し訳ありません。私はPythonをまったく使用していないので、リスト圧縮ax、y、zでどのように読み取ることができるか覚えていません。

私のファイルはax、y、zファイルで、各行はポイントです。

x1,y1,z1
x2,y2,z2
x3,y3,z3
........

inFile = "Myfile.las"

with lasfile.File(inFile, None, 'r') as f:
     # missing part
     points =[]

xとyだけでオブジェクトを保存したいもの

よろしくお願いします。簡単な質問でごめんなさい

4

1 に答える 1

6

x座標とy座標のリストが必要な場合は、簡単です。

with lasfile.File(inFile, None, 'r') as f:
     # missing part
     points = [line.split(',')[:2] for line in lasfile]

これらの座標が整数の場合は、次のコマンドをすばやく呼び出すことで、(strから)pythonintに変換できますmap()

points = [map(int, line.split(',')[:2]) for line in lasfile]

ジェネレーターであるPython3ではmap、ネストされたリスト内包表記を使用するのがおそらく最善です。

points = [[int(i) for i in line.split(',')[:2]] for line in lasfile]

これにより、リストのリストが作成されます。

[[x1, y1], [x2, y2], ...]
于 2012-10-09T12:09:57.120 に答える