2013-05-01 20 views
0

所以......Python的 - Postgres的陣列與dict/JSON /數組

我不得不使用python螞蟻通過Ajax調用返回的結果(JSON格式)到網頁從Postgres數據庫中提取數據

我必須忍受一個令人討厭的約束,因爲我無法訪問python SQL庫(這是一個帶有有限庫的黑盒子設備),所以我不得不向shell解析並解析結果。

皮塔餅,但沒有真正的問題至今

今天的問題,但與返回的Postgres數組類型

的典型值作爲字符串返回是,是的,一些元素確實包含冒號。 。

{foo,"bar bar",baz:qux,999} 

理想情況下,我想轉換爲

'values':['foo','bar bar","baz:qux","999"] 

項什麼好的建議或做我需要花一些時間regex101.com

回答

0

事情是這樣的:

In [24]: strs="""{foo,"bar bar",baz:qux,999}""" 

In [27]: [x.strip('"{}') for x in strs.split(",")] 
Out[27]: ['foo', 'bar bar', 'baz:qux', '999'] 
+0

看起來不錯,但吐出字符串從操作系統閱讀給我strs ='{富,「酒吧」,巴茲:qux,999}「。 strip和split combo爲我留下了''foo',''bar bar','baz:qux','999'] - 請參閱第二個元素中的野性雙引號 – PerryW 2013-05-01 03:14:26

+0

@PerryW這個例子對我來說很好,我沒有得到任何雙引號。 – 2013-05-01 03:52:02

0

我會使用像像py-postgresql純Python庫中的純Python庫從http://python.projects.pgfoundry.org/那個人不需要任何額外的本地代碼。

如果有必要,你甚至可以將它包含在一個腳本中,而不是多個文件。