我正在尝试编写一个简单的函数来从python字典更新MySQL表:
data = {'foo':1, 'bar':2}
table = 'mytable'
pk = 'mypk'
pk_value = 1
sql = ''
sql += 'UPDATE ' + table
sql += 'SET ' + convert_dict_to_str(data)
sql += 'WHERE ' + pk
sql += ' = ' + pk_value
sql += ';'
def convert_dict_to_str(data):
result = ''
for key in data:
result += "{key} = {value}".format(key=key, value=data[key])
return result
print convert_dict_to_str(data)
但我对如何将dict转换为"key = value, key = value"
感到困惑?
在我的例子中,所需的输出应该是:
'foo = 1, bar = 2'
答案 0 :(得分:10)
这样的东西?
>>> ", ".join(["=".join([key, str(val)]) for key, val in data.items()])
'foo=1, bar=2'