ich Python bin hier, ich schreibe ein einfaches ProgrammLogic Problem in Python-Code
Eingang
{'messagingservice': 'build4',
'oltpdatabase': 'build1',
'paymentsdatabase': 'build2',
'restserver': 'build5',
'PESQL': 'build3',
'configdatabase': 'build1'}
erwartete Ausgabe ist als unten
{'build4': 'messagingservice',
'build5': 'restserver',
'build2': 'paymentsdatabase',
'build3': 'PESQL',
'build1': 'oltpdatabase,configdatabase '}
Sie den Code unten ist, ich habe verwendet ...
#!/usr/bin/python
import json
import ast
from sys import argv
data = json.dumps(argv[1]);
json_to_unicode = json.loads(data)
unicode_to_dic = ast.literal_eval(json_to_unicode);
print(unicode_to_dic);
result_dic={};
data='';
for k,v in unicode_to_dic.iteritems():
if v in result_dic:
data=data.join((result_dic[v],','));
print (data)
result_dic[v]=data
else:
result_dic[v]=k;
print(result_dic)
Tatsächliche outpu t ist:
{'build4': 'messagingservice',
'build5': 'restserver',
'build2': 'paymentsdatabase',
'build3': 'PESQL',
'build1': 'oltpdatabase,'}
Einen weiteren Wert fehlt.
Können Sie eine kurze Erklärung dazu geben, was dieser Code tun soll? – idjaw
Mögliches Duplikat von [Malformed String ValueError ast.literal \ _eval() mit String-Darstellung von Tuple] (https://stackoverflow.com/questions/14611352/malformed-string-valueerror-ast-literal-eval-with-string- Repräsentation-of-tup) –