python - 类型错误 : load_dotenv() got an unexpected keyword argument 'encoding'

标签 python ubuntu flask dotenv

安装 ubuntu 操作系统后,在一切正常之前出现此错误。
我不知道我以前使用的是哪个版本的 dotenv。
但现在我用这个命令安装了。
pip3 安装 python-dotenv

最佳答案

(https://pypi.org/project/python-dotenv/) 中的这个选项对我有用
这是我在根目录中的内容
根目录有:
.env
应用程序.py
模板
要求.txt
在我的 .env 文件中,我已经列出了如下环境变量:
FLASK_APP=app.py
FLASK_ENV=发展
但是,在键入“flask run”来运行应用程序后,我会遇到与您相同的错误:
TypeError: load_dotenv() 得到了一个意外的关键字参数“编码”

如何修复它

  • 下载一个虚拟环境到 ubuntu(我用的是 Ubuntu 20.04)。
    $ sudo apt install python3.8-env
    $ python3.8 -m venv venv
  • 如果您输入 ls,您将看到一个名为 venv 的新文件夹。激活虚拟环境
    $ 源 ./venv/bin/acivate
  • 在 requirements.txt 中安装模块(假设您包含 dotenv,否则安装使用:$ pip3 install python-dotenv)
    $ pip3 install -r requirements.txt
  • 您可以使用添加 dotenv cli
    $ pip3 安装“python-dotenv[cli]”
  • 使用(不要忽略以下命令中 -- 和 python 之间的空格)运行您的应用程序:
    $ dotenv 运行 -- python app.py
  • 关于python - 类型错误 : load_dotenv() got an unexpected keyword argument 'encoding' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69840630/

    相关文章:

    python - 将元组添加到元组列表

    python - GAE任务队列: Sample code for accessing pull queue from outside App Engine?

    Python urllib2.urlopen(url).read() 与 Firefox 中看到的源代码不同

    python - pandas 为返回的答案找到对应的行值

    linux - 在终端中的 ubuntu 16.04 中挂载 ntfs 分区时出错

    bash - sed 替换每行内的新行字符

    perl - OTRS PostmasterMailbox.pl 解析/MIME 类型

    javascript - Flask 不在静态目录中执行 Javascript

    python - flask -NameError : name 'app' is not defined

    python - 如果覆盖默认值,如何为 Flask 提供静态服务?