间隔2-3个月后,重新开始编程遭遇的最常见问题是,是环境搭建
- 换一台电脑,操作系统版本、python依赖的环境都不相同,比如我的imac,因为硬件限制,mac版本大概会永远停留在在Monterey;
- 即使是曾经使用顺畅的老电脑,也许经过重大升级,比如2022年10月中旬刚刚发布的macOS-13.0,或许是公司办公网络进行了限制,没法顺利下载补丁,也会遭遇环境方面的问题。
import_tkinter问题
首先遭遇的是tkinter问题,如下所示
import _tkinter # If this fails your Python may not be configured for Tk
在stackoverflow上搜索,大部分答案给出的都是你没有安装好tkinter这个库,解决的方式也很简单,用brew安装
但是对我而言,问题没有这么简单,因为我执行这个命令后,出现的是新的错误提示
fatal: not in a git directory
Error: Command failed with exit 128: git
参考下面reference里小哥的分析,这是因为homebrew的组件homebrew-core和homebrew-cask没有被识别为Git仓库。
解决办法也很简单,直接按照brew的提示就好,输入
brew -v
按照提示来操作即可,如下图
怎么,还是报错,因为我copy如上命令时,没有发现最后一行其实是没有"/"链接的,因此会出现no such file or directory的提示,只要copy正确的命令即可
下来,就是正常安装
brew install python-tk
这样就完事了吗,当然不行,执行flask run,下面报错没有user这张数据库表,那么显然是数据库的问题了
数据库问题
因为我们使用的是SQLAlchemy的数据库,因此我们需要先建立一个数据库文件。
同时,我们会在目录下发现一个名为data.db的文件,这个文件名称来自app.py中的app.config函数
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////' + os.path.join(app.root_path, 'data.db')