Windows PyCharm的python项目移动存储位置后需要做的变更

news/2025/2/24 9:36:21

项目使用的venv虚拟环境,因此项目移动存储位置后需要重新配置python解释器的位置,否则无法识别,若非虚拟环境中运行,则直接移动后打开即可,无需任何配置。
PyCharm版本为2021.3.3 (Professional Edition),其他版本大体类似。

  1. 移动项目文件夹至目标位置后,打开pycharm,点击左上角的"file"—>“open”—>选择项目文件夹打开;
  2. 之后再点击左上角的"file"—>“Settings”—>“Project: {项目名}”—>"Python Intercepter"配置python解释器;
  3. 点击右侧的设置图标;在这里插入图片描述
  4. 再点击"Add",即可在"Existing Environment"自动识别本项目虚拟环境中的python解释器,若无法识别则自己点击右侧手动选择所需的解释器即可,也就是"python.exe"文件;在这里插入图片描述
  5. 最后再点击两次ok应用即可。至此程序可正常运行,但是pip、pyinstaller等工具仍然不可以用,因此需要进一步修改(以下以pip和pyinstaller为例);
  6. venv/Scripts目录下,找到activate和activate.bat文件,编辑其中的虚拟环境路径;
  7. 在变更之前最好是先看下pip和pyinstaller的版本,以免影响正常使用。版本查看方式如下图,pip的版本就是21.3.1,pyinstaller的版本就是6.1.0;
    在这里插入图片描述
  8. 解决pip和pyinstaller不可用的问题,有两种办法:一是利用二进制编辑工具直接修改venv/Scripts路径下的pip.exe和pyinstaller.exe文件里面的对应路径为新路径即可;二是激活虚拟环境后直接利用python -m pip install --upgrade --force-reinstall pip重新安装pip,再pip uninstall pyinstallerpip install pyinstaller重新安装pyinstaller即可。也可python -m pip install --upgrade --force-reinstall pip==21.3.1pip install pyinstaller==6.1.0指定版本安装即可。推荐使用第二中方法最为简单。

http://www.niftyadmin.cn/n/5864188.html

相关文章

选择排序和计数排序

选择排序和计数排序 选择排序 定义 选择排序是一种简单直观的排序算法。它的基本思想是在每一趟遍历中找到未排序部分中的最小元素,并将其放到正确的位置上。 操作步骤 初始化:设数组长度为 n。外层循环:控制需要选择的位置 i,从 …

java实现多图合并加字和画框等

java实现多图合并加字和画框等 在wutool中,封装了图片处理工具类,基于java自带的BufferedImage类,实现多图合并和加字、图片画框等。 关于wutool wutool是一个java代码片段收集库,针对特定场景提供轻量解决方案,只要…

系统讨论Qt的并发编程——逻辑上下文的分类

目录 前言 首先,讨论Qt里常见的三种上下文 同一线程的串行执行 同一线程的异步执行 多线程的执行 moveToThread办法 前言 笔者最近看了一个具备一定启发性质的Qt教程,在这里,笔者打算整理一下自己的笔记。分享在这里. 首先&#xff0c…

福昕阅读器方便快捷方法技巧

标题 福昕阅读器方便快捷 1 快捷键设置: 常用有:高亮、绘图矩形、打字机等

Visual Studio更新说明(关注:.NET+AI生产力)

Ver V0.0:Visual Studio 2022 v17.12更新:.NET9AI生产力 AI插件推荐 (1)腾讯云AI代码手(内含了DeepSeek-R1),目前免费,但收费我也可能会买。 AI插件!推荐 (1)百度的…

BY组态:开启工业智能化的未来之钥

在工业自动化与数字化转型的浪潮中,组态软件(SCADA)作为工业控制系统的“大脑”,已成为企业提升效率、优化流程的核心工具。而BY组态,作为新一代智能化组态软件平台,凭借其高效、灵活、安全、智能的特性&am…

数组与对象的元素添加

一、向数组添加元素 1. push () 方法 push() 方法用于在数组的末尾添加一个或多个元素,并返回数组的新长度。它直接修改原数组。 let fruits [apple, banana]; let newLength fruits.push(cherry); console.log(fruits); // 输出: [apple, banana, cherry] con…

Flutter: TextEditingValue的实现

文章目录 TextEditingValue一、fromJSON二、text、selection、composing、empty三、isComposingRangeValid四、replaced TextEditingValue /// The current text, selection, and composing state for editing a run of text. immutable class TextEditingValue {const TextEd…