#python #pandas #pip
Вопрос:
Я пытаюсь запустить два независимых кода (назовем их кодом 1 и кодом 2), которые используют две разные версии pandas (версия 0.20.1 для кода 1 и 1.2.4 для кода 2). Код 1 не запускается в версии 1.2.4, а код 2 не запускается в версии 0.20.1. Я ищу эффективный способ иметь на своем компьютере самую последнюю версию pandas (в этом случае 1.2.4), сохраняя при этом возможность запускать коды (например, код 1), для которых требуются более старые версии pandas. В идеале я хотел бы знать, есть ли способ указать версию pandas, которую я хочу использовать в начале моего сценария, прежде чем запускать его.
Одним из решений, которые я нашел в Интернете, было использование pkg_resources
пакета следующим образом:
import pkg_resources
pkg_resources.require("pandas==0.20.1")
import pandas as pd
но я получаю следующую ошибку
Traceback (most recent call last):
File "<ipython-input-4-74003f72683b>", line 1, in <module>
pkg_resources.require("pandas==0.20.1")
File "C:Users**UserName**Anaconda3libsite-packagespkg_resources__init__.py", line 886, in require
needed = self.resolve(parse_requirements(requirements))
File "C:Users**UserName**Anaconda3libsite-packagespkg_resources__init__.py", line 777, in resolve
raise VersionConflict(dist, req).with_context(dependent_req)
VersionConflict: (pandas 1.2.4 (c:users**UserName**anaconda3libsite-packages), Requirement.parse('pandas==0.20.1'))
Если возможно, я хотел бы знать, есть ли способ сделать это без изменения одного из двух кодов, которые я пытаюсь запустить. Спасибо!!
Комментарии:
1. Судя по путям в обратной трассировке, похоже, что вы используете conda. Вы можете использовать среды conda , чтобы иметь несколько версий python и пакетов.
2. Я обязательно займусь этим вопросом. Я искал решение, в котором мне просто нужно было бы указать версию pandas, которую я хочу запустить в начале сценария, потому что другие люди с другими версиями pandas также могут запускать эти два кода. Создавая среду conda, каждый другой пользователь кодов также должен будет создавать среды conda на своих компьютерах, верно?
3. у вас есть виртуальная среда (
venv
) для запуска разных версий. И когда он активируетсяvenv
, вы можете установитьpip install pandas==1.2.4
и в другихvenv
, которые вы можете использоватьpip install pandas==0.20.1