Слово order
на самом деле является ключевым словом SQL. У вас будет такая же проблема, если вы попытаетесь использовать таблицу с именем group
или select
. Вы можете исправить это MySQL, используя кавычки вокруг него, в соответствии с:
select f1, f2 from `order` where blah blah blah ...
Однако, если ваша таблица не будет удерживать только один заказ (в этом случае это не будет сделано для потому что основной бизнес вскоре будет банкротом), вы должны, вероятно, назвать свою таблицу orders
.
Это решает как ваши проблемы, тот, который вы нашли, и тот, который вы сделали 't: -)
Мне пришло в голову, что вы, возможно, на самом деле спрашиваете, как реализовать оператор +
для словарей, похоже, что работает следующее:
>>> class Dict(dict):
... def __add__(self, other):
... copy = self.copy()
... copy.update(other)
... return copy
... def __radd__(self, other):
... copy = other.copy()
... copy.update(self)
... return copy
...
>>> default_data = Dict({'item1': 1, 'item2': 2})
>>> default_data + {'item3': 3}
{'item2': 2, 'item3': 3, 'item1': 1}
>>> {'test1': 1} + Dict(test2=2)
{'test1': 1, 'test2': 2}
Обратите внимание, что это больше затрат, чем при использовании dict[key] = value
или dict.update()
, поэтому я бы рекомендовал не использовать это решение, если вы все равно не собираетесь создавать новый словарь.