相关疑难解决方法(0)

pip:处理多个Python版本?

有没有办法让pip多个版本的Python发挥得很好?例如,我想使用pip显式安装到我的站点2.5安装或我的站点2.6安装.

例如,easy_install我用easy_install-2.{5,6}.

并且,是的 - 我知道virtualenv,不 - 它不是解决这个特定问题的方法.

python pip

448
推荐指数
13
解决办法
47万
查看次数

使用pip将Python包安装到不同的目录中?

我知道明显的答案是使用virtualenv和virtualenvwrapper,但出于各种原因我不能/不想这样做.

那么我该如何修改命令呢

pip install package_name
Run Code Online (Sandbox Code Playgroud)

使pip安装默认值以外的包某处site-packages

python pip

394
推荐指数
11
解决办法
43万
查看次数

requirements.txt vs setup.py

我开始使用Python.我已经添加了requirements.txtsetup.py我的项目.但是,我仍然对这两个文件的目的感到困惑.我读过这setup.py是为可再发行的东西而requirements.txt设计的,它是为不可再发行的东西而设计的.但我不确定这是否准确.

这两个文件真的打算如何使用?

python setup.py requirements.txt

68
推荐指数
4
解决办法
2万
查看次数

python setup.py 更改需求模块名称

我有一个需要特定版本模块的代码库。我还有另一个我使用的工具,它使用不同版本的模块。我试图让这两个代码库相互配合。

例如:代码库 A 需要 foomodule==1.2,代码库 B 需要 foomodule==2.0

如何使用 pip(因此通过 setup.py)安装代码库 A,以便它不会覆盖 foomodule==2.0

设置文件

setup_options = dict(
    install_requires=['foomodule==1.2']
Run Code Online (Sandbox Code Playgroud)

如果我手动将foomoduledist-packages 中的文件夹名称更改为foomodule1.2,则可以通过替换代码库中所有出现的“foomodule”来解决问题。但是如何在 setup.py 期间以编程方式执行此操作?

我可以将 foomodule 安装到不同的位置,重命名它,然后将它移动到 dist-packages。有没有办法将所需的软件包安装到自定义位置?

也许是这样的:

setup_options = dict(
    install_requires=[('foomodule==1.2', location_of_install)]
)

setup(**setup_options)

new_location = os.join(distutils.sysconfig.get_python_lib(), 'foomodule1.2')
shutil.copyfile(location_of_install, new_location)
Run Code Online (Sandbox Code Playgroud)

python pip

5
推荐指数
0
解决办法
684
查看次数

如何使代码中的 Python 包更新即时生效

我有以下代码行:

from pip import main as pipmain

# initial installation
pipmain(["install", "pyscenic==0.10.0"])
import pyscenic
pyscenic.__version__

# return 0.10.0
# Some large code here

# second installation
pipmain(["install", "install", "pyscenic==0.10.4"])
import pyscenic
pyscenic.__version__
# still return 0.10.0

# Another large chunk that required new version
Run Code Online (Sandbox Code Playgroud)

我想在我的代码中动态升级pyscenic包。然而,正如我上面指出的,在第二次安装中版本仍然没有改变。我预计它会更改为 0.10.4。我怎样才能正确地做到这一点?

我也尝试过这个,仍然没有效果:

import os
import importlib
os.system('pip install pyscenic==0.10.0')
import pyscenic
pyscenic.__version__
os.system('pip install pyscenic==0.10.4')
import pyscenic
pyscenic.__version__
importlib.reload(pyscenic)
pyscenic.__version__
Run Code Online (Sandbox Code Playgroud)

所有代码都在 IPython(交互式)上进行了测试。如果我退出IPython并再次重新输入它就会生效。但这不是我想要的。

python pip

5
推荐指数
1
解决办法
1381
查看次数

将两个CSV文件的交集与Scala合并

从输入1:

fruit, apple, cider  
animal, beef, burger
Run Code Online (Sandbox Code Playgroud)

和输入2:

animal, beef, 5kg
fruit, apple, 2liter
fish, tuna, 1kg
Run Code Online (Sandbox Code Playgroud)

我需要生产:

fruit, apple, cider, 2liter
animal, beef, burger, 5kg
Run Code Online (Sandbox Code Playgroud)

我能得到的最接近的例子是:

object FileMerger {
def main(args : Array[String]) {
  import scala.io._
  val f1 = (Source fromFile "file1.csv" getLines) map (_.split(", *")(1))
  val f2 = Source fromFile "file2.csv" getLines
  val out = new java.io.FileWriter("output.csv")
  f1 zip f2 foreach { x => out.write(x._1 + ", " + x._2 + "\n") }
  out.close
  }
}
Run Code Online (Sandbox Code Playgroud)

问题是该示例假定两个CSV文件包含相同数量的元素并且顺序相同.我的合并结果必须只包含第一个和第二个文件中的元素.我是Scala的新手,非常感谢任何帮助.

csv scala

2
推荐指数
1
解决办法
2438
查看次数

标签 统计

python ×5

pip ×4

csv ×1

requirements.txt ×1

scala ×1

setup.py ×1