具体来说,我得到了一个调用Django的服务形式(使用活塞写的,但我不认为这是相关的),通过POST像这样发送:Django,Python:有没有简单的方法将PHP式的括号内POST键转换为多维字典?
edu_type[3][name] => a
edu_type[3][spec] => b
edu_type[3][start_year] => c
edu_type[3][end_year] => d
edu_type[4][0][name] => Cisco
edu_type[4][0][spec] => CCNA
edu_type[4][0][start_year] => 2002
edu_type[4][0][end_year] => 2003
edu_type[4][1][name] => fiju
edu_type[4][1][spec] => briju
edu_type[4][1][start_year] => 1234
edu_type[4][1][end_year] => 5678
我想处理此上Python结束得到这样的事情:
edu_type = {
'3' : { 'name' : 'a', 'spec' : 'b', 'start_year' : 'c', end_year : 'd' },
'4' : {
'0' : { 'name' : 'Cisco', 'spec' : 'CCNA', 'start_year' : '2002', 'end_year' : '2003' },
'1' : { 'name' : 'fiju', 'spec' : 'briju', 'start_year' : '1234', 'end_year' : '5678' },
},
}
任何想法?谢谢!
觉得我不是你想要做什么明确的。你想在下面的字典就像你上面的那个。原始数据是什么? PHP风格的括号内容是什么意思? – McPherrinM 2009-12-11 21:01:07
HTTP POST(一个PUT,但在这里不相关)允许发送名称/值对作为字符串。上面的代码表示一个这样的POST,左侧的名称字符串和右侧的值。 PHP采用了一种技巧,使得通过POST请求传递多维数组变得简单:当上面的语法被发布到PHP脚本时,它可以作为本地数组立即在$ _POST superglobal中使用。由于这个技巧,PHP程序员在发送数据时往往不会考虑两次,这是我得到的问题 - 我没有访问调用代码的权限。 – 2009-12-11 21:32:37
那么你是否会收到一个字符串,看起来像你的第一个代码块中的代码?或者你得到一个Python对象? – andylei 2009-12-12 00:13:05