次の生の文字列を配列に解析したいと思います。
(65.312321,89.314213214214)
Pythonなので、これを行うための美しい方法があるに違いありません。私にはわかりません。
Python の float のタプルと構文的に同等であるため、以下を使用できますast.literal_eval
。
>>> import ast
>>> print ast.literal_eval("(65.312321,89.314213214214)")
(65.312321, 89.314213214214)
必要に応じて、リストに変換できます。
>>> print list(ast.literal_eval("(65.312321,89.314213214214)"))
[65.312321, 89.314213214214]
Python では、配列はありません。不変のタプルまたは可変のリストにデータが含まれることになります。あなたの最善の策は、この目的のために ast を使用することです
>>> import ast
>>> st = "(65.312321,89.314213214214)"
>>> ast.literal_eval(st) # as a tuple
(65.312321, 89.314213214214)
>>> list(ast.literal_eval(st)) # as a list
[65.312321, 89.314213214214]
必要に応じて、括弧を取り除いてカンマで分割することもできます
>>> st.strip("() ").split(",")
['65.312321', '89.314213214214']