没有名为 future 的模块

Posted

技术标签:

【中文标题】没有名为 future 的模块【英文标题】:No module named future 【发布时间】:2018-08-27 11:28:43 【问题描述】:

我在 python 中运行一个电报机器人,我在 raspbian (pi3) 上使用 python3.6

以下是我的导入:

from __future__ import (absolute_import, division,
                    print_function, unicode_literals)
from builtins import (
    bytes, dict, int, list, object, range, str,
    ascii, chr, hex, input, next, oct, open,
    pow, round, super,
    filter, map, zip)
from uuid import uuid4

import re
import telegram

from telegram.utils.helpers import escape_markdown

from telegram import InlineQueryResultArticle, ParseMode, \
    InputTextMessageContent
from telegram.ext import Updater, InlineQueryHandler, CommandHandler
import logging
import random
import telepot
import unicodedata
import json
import requests
import bs4
from bs4 import BeautifulSoup

当我尝试使用 sudo python3 bot.py 运行我的机器人时,我得到了

ImportError: No module named 'future'

我已经搜索并找到了很多答案,但没有一个对我有用,例如 pip install futurepip3 install future 该模块确实显示在我的 python 3.6 库中 future in lib

知道为什么它仍然显示No module named future吗? ?

【问题讨论】:

您使用sudo 运行有什么原因吗?这会破坏你的环境,这就是为什么 python 找不到已安装的模块 PYTHONPATH not working for sudo on GNU/Linux (works for root)的可能重复 @avigil 这正是我一直这样做的方式。我没有,一切都很好。谢谢 【参考方案1】:

我在使用别人编写的 Python 代码时遇到了类似的问题。见http://python-future.org/。 future 是一个帮助在 Python 2 和 3 之间进行转换的模块。通过 pip3 install future 进行安装对我来说很容易

【讨论】:

【参考方案2】:

我尝试了安装、重新安装、easy_install 和 conda install,但对我没有任何帮助。我终于能够通过在未来运行升级来导入我的包。

pip install -U future 

这解决了我的问题。

【讨论】:

【参考方案3】:

这些都不适合我,尽管卸载了模块,然后用pip3 install future 重新安装它我一直收到错误(尝试运行 ardupilot 的sim_vehicle.py --console --map 以防万一)

【讨论】:

【参考方案4】:

我遇到了类似的问题,用conda install future解决了

【讨论】:

【参考方案5】:

我遇到了类似的问题,用easy_install future解决了

【讨论】:

【参考方案6】:

我遇到了同样的问题。 以前的答案不再有效。 我必须安装 python 3.7 并使用它:

apt-get install curl
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3.7 get-pip.py

【讨论】:

【参考方案7】:

我知道这是一个老问题,但如果有人需要的话。这发生在我尝试为 ArduPilot 构建测试时。

我遇到了类似的问题,你一直在使用的 pip 是针对 python3 的。所以你需要为python2.7安装pip。你可以使用 curl 来做到这一点

apt-get install curl
curl https://bootstrap.pypa.io/2.7/get-pip.py -o get-pip.py
python get-pip.py

然后就可以运行了

pip install future

安装未来。

【讨论】:

以上是关于没有名为 future 的模块的主要内容,如果未能解决你的问题,请参考以下文章

AttributeError:“模块”对象没有属性“ensure_future”

python 期物

concurrent.futures模块

线程-线程池-concurrent.futures模块

线程-线程池-concurrent.futures模块

concurrent.futures模块