Нет файла pyvenv.cfg
Я сделал переменную cfg = waterot.cfg
а затем создал новый файл "waterot.cfg
"в pycharm это автоматически сделало pyvenv.cfg
файла, я не знал, что это было, и я получал ошибки в моем коде. Я удалил pyvenv.cfg
файл и изменен с .cfg
к .txt
. Теперь, когда я запускаю свой код, я получаю сообщение об ошибкеNo pyvvenv.cfg file
Это проблемный фрагмент кода
redeemkey = message.author
if redeemkey.startswith('!download'):
if message.channel.id == 695834994064490658:
with open ('waterOT.txt', 'rb') as otcfg:
await message.author.send(file=discord.File(otcfg, 'waterOT.cfg'))
await message.delete()
10 ответов
В моем случае я пробовал много способов, но, наконец, я сделал одну вещь, которая решила мою ошибку. Я просто удаляю существующий каталог venv и устанавливаю Project Interpreter из своего редактора. Спасибо за настройку редактора PyCharm
Если вы знаете путь к дистрибутиву Python, который используется для создания виртуальной среды, и его версию, вы можете просто создать себе файл со следующим содержимым
home = <location-of-python-exe>
include-system-site-packages = false
version = <version>
где
- - это папка, в которой расположен файл, который использовался для создания виртуальной среды Python. Пример
C:\Python\Python385-64
. -
<version>
это версия питона, по адресу<location-of-python-exe>
. Вы можете проверить это, запустив<location-of-python-exe>\python.exe
. Пример:3.8.5
.
Допустимые места для
pyvenv.cfg
являются (PEP405):
- Рядом с исполняемым файлом python (
venv/Scripts/pyvenv.cfg
), т.е. в одной папке сpython.exe
. - Один каталог выше исполняемого файла python; корень виртуальной среды (
venv/pyvenv.cfg
)
где
venv
- предполагаемое имя виртуальной среды (может быть и другое).
имя python.exe должно быть таким. У меня был py.exe, и он не работал. Создайте файл: pyvenv.cfg и сохраните его в каталоге venv.
home = C:\Windows
include-system-site-packages = false
version = Flask 2.3.2
Для тех, кто пришел сюда, как я, обнаружена ошибка обновления Python с 3.10 до 3.11 с «опцией обновления» вместо выборочной установки. Ошибка существует в VSCode
Решение довольно простое:
- Удалите старый Python (в Windows, через dd или программу удаления)
- Обновите переменную системной среды, чтобы она указывала на сценарий Boyt 3.11 и файл py.exe.
- Открыть список расширений на VSCode, отключить, включить
Обратите внимание, что шаг 3 может быть единственным необходимым шагом, но я не могу подтвердить это, поскольку я выполнил эти три шага в своем случае.
Самый простой способ - выбрать «файл» в левом углу окна pycharm, затем выбрать перезапустить IDE, а затем выполнить шаги по перезапуску настроек IDE. Это сработало для меня.
в моем случае я удалилScripts
папку, а затем перешел в корневую папку проекта и снова создал виртуальную среду с помощью команды:virtualenv .
Я запускал процесс в Windows от имени другого пользователя с каким-то уродливым кодом pywin32, когда столкнулся сNo pyvenv.cfg file
с кодом возврата 106 изpython.exe
внутри моего венва.
Короче говоря, я исправил это, заменив относительный путь к exe на абсолютный путь.
- Относительный путь (плохой):
venv\Scripts\python.exe
- Абсолютный путь (хорошо):
C:\...\venv\Scripts\python.exe
С PyCharm вы можете восстановить это изменение за пару кликов:
Щелкните правой кнопкой мыши в любом месте редактора и выберите Local History | Показать историю из контекстного меню.
В открывшемся диалоговом окне на левой панели отображается список всех сохраненных ревизий текущего файла с отметками времени . На правой панели отображается средство просмотра различий, которое отображает различия между каждой ревизией и текущим состоянием файла.
ИЛИ ЖЕ
Выполните одно из следующих действий:
Чтобы вернуть весь файл или каталог в состояние этой ревизии, щелкните его правой кнопкой мыши и выберите « Вернуть» в контекстном меню или щелкните значок « Вернуть» на панели инструментов.
Чтобы восстановить определенный фрагмент кода , выберите ревизию, содержащую этот фрагмент. В представлении различий справа найдите фрагмент кода, который вы хотите восстановить, нажмите кнопку с шевроном, кнопку с шевроном, чтобы скопировать его с левой панели.
Я пытался прочитать приведенные выше решения, но не понял. Я удалил Python и переустановил его снова, и все заработало. Ошибка исчезла.
это файл конфигурации для виртуальной среды . Не зная, как вы все настраиваете, я предполагаю, что Pycharm создал виртуальную среду .
Вы не должны удалять
pyvenv.cfg
файл, если вы хотите, чтобы виртуальная среда работала.