2
我有一個類對象的列表。每個對象都需要被添加到字典中,以便它可以被json編碼。我已經確定我需要使用json庫和dump
方法。該物體看起來是這樣的:建立字典是JSON編碼 - python
class Metro:
def __init__(self, code, name, country, continent,
timezone, coordinates, population, region):
self.code = code #string
self.name = name #string
self.country = country #string
self.continent = continent #string
self.timezone = timezone #int
self.coordinates = coordinates #dictionary as {"N" : 40, "W" : 88}
self.population = population #int
self.region = region #int
所以JSON看起來就像這樣:
{
"metros" : [
{
"code" : "SCL" ,
"name" : "Santiago" ,
"country" : "CL" ,
"continent" : "South America" ,
"timezone" : -4 ,
"coordinates" : {"S" : 33, "W" : 71} ,
"population" : 6000000 ,
"region" : 1
} , {
"code" : "LIM" ,
"name" : "Lima" ,
"country" : "PE" ,
"continent" : "South America" ,
"timezone" : -5 ,
"coordinates" : {"S" : 12, "W" : 77} ,
"population" : 9050000 ,
"region" : 1
} , {...
是否有這一個簡單的解決方案?我一直在研究詞典理解,但它似乎會非常複雜。
似乎在解析'd'中的'f','metro','fields'和'list_of_metros'變量時會遇到麻煩。難道是因爲我在使用3.3.4口譯員嗎? – user2079802
@ user2079802,在dict理解中出現了拼寫錯誤(冗餘'f')。我修好了它。該代碼可以在Python 2.x和3.x中運行。 – falsetru
@ user2079802,下面是一個工作示例(Python 3.x):http://ideone.com/H22ViI – falsetru