from functools import reduce
. for
. См. Цитату из Что нового в Python 3.0 . Удалено reduce()
. Используйте functools.reduce()
, если вам это действительно нужно; однако в 99% случаев явная for
петля более читаема. KeyError
) - см. ответ @ eafit для решения Итак, почему не используйте предложенный метод из вопроса kolergy для получения значения:
def getFromDict(dataDict, mapList):
for k in mapList: dataDict = dataDict[k]
return dataDict
И код из ответа @ eafit для установки значения:
def nested_set(dic, keys, value):
for key in keys[:-1]:
dic = dic.setdefault(key, {})
dic[keys[-1]] = value
Оба работают прямо в python 2 и 3
Для обновлений проверьте здесь .
Шаги по установке MongoDB Community Edition на Ubuntu 16.04
Запустите эти команды в терминале (Ctrl + Alt + T) :
Чтобы удалить уже установленный MongoDB
sudo apt-get purge mongodb-org*
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb
Затем запустите с помощью следующих команд:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
sudo apt-get update
sudo apt-get install -y mongodb-org
Чтобы запустить MongoDB run:
sudo service mongod start
sudo apt-get update
иupgrade
. Я думаю, что проблема была связана с этим, а не с mongodb на самом деле. Спасибо, в любом случае! – GabrielRado 29 December 2016 в 17:44