2017-07-10 1 views
0

私はリストのリストを含む.txtファイルを持って、各リストは、座標のセットです:パイソン - 一つの大きな文字列からの座標のスプリットリスト

[[151.22999572753906, -33.84008789062494], [..., ...],... [..,..]] 

私は、このファイルを読むことができる方法を知りたいです私は必要なすべての座標を簡単に抽出することができるので、配列として、文字列としてではありません。

これまでの私のコード:

import re 

d = '[[151.22999572753906, -33.84008789062494], [151.22999572753906, -33.84008789062494][151.22999572753906, -33.84008789062494]]' 
##l = re.split('[\[\]]', d) 
l = re.split('\]\[', d) 
print(l) 

>>>['[[151.22999572753906, -33.84008789062494], [151.22999572753906, -33.84008789062494', '151.22999572753906, -33.84008789062494]]'] 
+0

何か試しましたか?何がうまくいかなかったのですか? –

答えて

2

ファイルの内容が有効なJSONことが起こるように見えます。あなたはフォーマットが異なりますするつもりはないことを確認している場合は、ちょうどあなたがどのように多くの行を読みました

PSEUDOCODE

with open(.txt) 
    n = 0 
    while True 
     line = readline 
     n += 1 
     print(n , line) 

json.load

import json 
json.loads('[[151.22999572753906, -33.84008789062494]]') 
# or 
json.load(open('/path/to/your.txt')) 

[[151.22999572753906, -33.84008789062494]] 
+0

JSONDecodeError:余分なデータ:行1列27247(char 27246)。ここで列27247は "]]" –

+0

あなたのデータのようなサウンドは、概説した形式では完全には記述されていません。 独自のパーサを記述する必要があるかもしれません。列27247の直前および直後の文字は何ですか? –

0

スタートを使用することができますか?

+0

実際には1行だけですが、複数のリストが含まれています: '[[151.22999572753906、-33.84008789062494]、... [...、...]] [[...、...] ... [...、...]] 'これらのリストの間には文字がありません –

+0

@カリン:あなたは'、 'の間に質問のコードを試してみてください。 – stovfl

関連する問題