windows下安装python包pip时出错DEPRECATION解决

本文介绍了在Windows 7系统中使用pip时遇到的DEPRECATION警告问题,并提供了一个简单的解决方案:通过创建pip配置文件来禁用该警告。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用pip list时出现DEPRECATION是怎么回事?怎么解决?修改

用Google搜了半天也没有解决的办法,搜到在stack overflow上有同样问题的人,不过那个人是Linux系统,而我是windows 7 ,试着弄了一下也没弄好DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.



answer:
在C:\Users\Administrator下建立pip文件夹,在pip下新建pip.ini:
内容为:
[list]
format=columns


<think>我们使用PyInstaller将Python脚本打成独立的EXE文件,步骤如下:1.确保已安装PyInstaller:在命令提示符或终端中运行`pipinstallpyinstaller`2.进入脚本所在目录:`cdC:\Users\yifeng6\Desktop`3.执行打命令:`pyinstaller--onefile--windowed--add-data"tcl;tcl"--add-data"tk;tk"jinjia.py`详细说明:-`--onefile`:生成单个EXE文件-`--windowed`:隐藏控制台窗口(因为你的程序是GUI程序)-`--add-data"tcl;tcl"--add-data"tk;tk"`:确保Tkinter所需的运行文件被含注意:由于你的程序使用了`requests`库,可能会遇到证书问题,因此建议将certifi的证书文件也含进来。我们可以通过以下步骤找到证书路径:-在Python中执行:importcertifiprint(certifi.where())-然后使用`--add-data`将证书文件添加到打中,例如:--add-data"C:\Python39\Lib\site-packages\certifi\cacert.pem;certifi"但是,为了简化,我们可以先尝试基本打,如果运行EXE出现SSL错误,再添加证书。完整命令(假设证书路径为`C:\Python39\Lib\site-packages\certifi\cacert.pem`):```pyinstaller--onefile--windowed--add-data"tcl;tcl"--add-data"tk;tk"--add-data"C:\Python39\Lib\site-packages\certifi\cacert.pem;certifi"jinjia.py```如果不知道证书路径,可以暂不加,如果运行出错再处理。执行打命令后,会在当前目录下生成`dist`文件夹,其中含`jinjia.exe`。另外,由于你的程序使用了`requests`,可能会需要隐藏导入一些模块,如果打后运行报错提示缺少模块,可以添加`--hidden-import`参数,例如:--hidden-import=requests.models--hidden-import=requests.packages.urllib3因此,更健壮的打命令可能是:```pyinstaller--onefile--windowed^--add-data"tcl;tcl"^--add-data"tk;tk"^--add-data"C:\Python39\Lib\site-packages\certifi\cacert.pem;certifi"^--hidden-import=requests.models^--hidden-import=requests.packages.urllib3^jinjia.py```注意:在Windows命令提示符中,`^`用于换行。如果使用PowerShell,则用反引号`````换行。步骤总结:1.打开命令提示符(CMD)或PowerShell2.进入桌面目录:`cdC:\Users\yifeng6\Desktop`3.执行上述打命令(根据实际情况调整证书路径和Python版本)打完成后,在`dist`文件夹中找到`jinjia.exe`,双击即可运行。如果遇到问题,可以尝试在虚拟环境中打以减少依赖问题。虚拟环境打步骤:1.安装虚拟环境工具:`pipinstallpipenv`2.创建虚拟环境:`pipenv--python3.9`(确保使用与脚本兼容的Python版本)3.进入虚拟环境:`pipenvshell`4.安装依赖:`pipinstallrequestspyinstaller`5.执行打命令(同上)注意:在虚拟环境中,证书路径可能会改变,可以通过在虚拟环境中运行Python获取`certifi.where()`的路径。如果不想使用虚拟环境,也可以直接打,但生成的EXE文件可能会含一些不必要的库,体积较大。最后,测试生成的EXE文件是否能在其他没有Python环境的机器上运行。</think>### 使用 PyInstaller 将 Python 脚本转换为 EXE 文件的详细步骤 #### 第一步:准备打环境 1. 确保已安装 PyInstaller: ```cmd pip install pyinstaller ``` 2. 确认依赖库已安装(特别是 requests 和 tkinter): ```cmd pip install requests ``` #### 第二步:执行打命令 在脚本目录(`C:\Users\yifeng6\Desktop`)打开命令提示符,执行: ```cmd pyinstaller --onefile --windowed ^ --hidden-import=requests.models ^ --hidden-import=requests.packages.urllib3 ^ --add-data "tcl;tcl" ^ --add-data "tk;tk" ^ --icon=NONE ^ jinjia.py ``` **参数说明**: - `--onefile`:生成单个 EXE 文件 - `--windowed`:隐藏控制台窗口(适合 GUI 程序) - `--hidden-import`:强制含 requests 的隐藏依赖 - `--add-data`:添加 Tkinter 必需的运行文件 - `--icon=NONE`:无自定义图标(可替换为 `--icon=your_icon.ico`) #### 第三步:处理 HTTPS 支持 为避免 requests 库的 SSL 证书错误,添加证书文件: ```cmd :: 获取证书路径 python -c "import certifi; print(certifi.where())" :: 添加证书到打命令(示例路径) --add-data "C:\Python39\Lib\site-packages\certifi\cacert.pem;certifi" ``` #### 第四步:查找生成文件 打完成后: 1. EXE 文件路径:`C:\Users\yifeng6\Desktop\dist\jinjia.exe` 2. 依赖文件路径:`C:\Users\yifeng6\Desktop\build\`(可删除) #### 第五步:测试 EXE 文件 1. 双击运行 `jinjia.exe` 2. 常见问题处理: - **缺失 DLL**:在打命令添加 `--paths "C:\Python39\DLLs"` - **Tkinter 显示异常**:确保含 `--add-data "tcl;tcl" --add-data "tk;tk"` - **窗口不置顶**:添加运行重定向: ```python import sys if getattr(sys, 'frozen', False): import os os.environ['TK_SILENCE_DEPRECATION'] = '1' ``` #### 精简打建议(减小文件体积) ```cmd :: 在虚拟环境中打 pip install pipenv pipenv --python 3.9 pipenv install requests pyinstaller pipenv run pyinstaller [上述参数] jinjia.py ``` 虚拟环境打可使文件体积减少 40-60%[^1]。 > **验证**:将生成的 EXE 复制到无 Python 环境的电脑测试运行。平均打间约 2-5 分钟,取决于系统性能[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值