首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何以编程方式/通过Python脚本安装Python模块?

如何以编程方式/通过Python脚本安装Python模块?
EN

Stack Overflow用户
提问于 2012-10-19 01:30:18
回答 3查看 17K关注 0票数 23

我是否可以在脚本中严格地从PyPi下载和安装Python模块,而无需在所有上使用shell

我使用一个非标准的Python环境,Autodesk Maya的Python解释器。这不是随"easy_install“而来的,也没有"shell”,只有由主Maya可执行文件调用的python解释器。将ez_setup.py的内容复制并粘贴到脚本编辑器窗口并正确运行它将easy_install安装到Maya的目录中,但是脚本错误地将Python解释器记录为"...maya.exe“而不是"...mayapy.exe”,而且使用easy_install需要一个shell。

其目标是提供一个Python脚本,例如,将NumPy安装到Maya系统中。这可以通过将鸡蛋放入站点包目录来实现,但这需要手动的用户干预。在Maya环境之外,终端用户必须做的任何事情本质上都是不可触摸的,特别是扰乱文件系统。但是通过脚本来破坏文件系统呢?这很好。

还有什么比ez_setup.py +编辑产生的easy.py的+子进程调用更优雅的吗?我觉得这是个基本特征。我在网上看到通过pip安装编程模块的文档..。但是需要先安装pip!

在脚本范围内安装模块的最优雅的方法是什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-22 17:46:47

在windows上为Maya安装easy_install。

  1. 下载setup.py
  2. 打开提升的windows cmd (启动,键入cmd,人民币点击it,->run作为管理员)
  3. 将cmd目录更改为x:\maya dir\bin
    • 示例: cd c:\Program \MayaXX\bin

  1. 执行以下命令可能是x:\WhereYouSaved\ez_setup.py

现在,应该正确地设置简单的安装。您可能仍然需要执行以下步骤:

  1. cd:\maya安装dir\python\script
  2. 重命名此文件夹中的所有文件,从ma 开始
    • 例如:对于%i,在(*)中,做人名%i吗?

  1. 将此文件夹添加到path 中
    • 命中win+e
    • 人民币我的电脑并选择属性
    • 高级系统设置->环境变量
    • 搜索变量路径,编辑它并追加;x:\maya安装dir\python\script

现在,您可以从cmd调用maeasy_install pythonModule来安装东西。此外,您还可以调用Maya内部的以下代码来安装模块:

代码语言:javascript
运行
复制
from setuptools.command import easy_install
easy_install.main( ["pythonModule"] )

注意:如果Maya安装在程序文件中,那么如果没有提升,就不能真正安装。除非您将磁盘权限更改为Maya目录。

票数 18
EN

Stack Overflow用户

发布于 2013-08-02 15:05:47

代码语言:javascript
运行
复制
#!/usr/bin/env python

from __future__ import print_function

REQUIREMENTS = [ 'distribute', 'version', 'Cython', 'sortedcollection' ]
try:
    from setuptools import find_packages
    from distutils.core import setup
    from Cython.Distutils import build_ext as cython_build
    import sortedcollection
except:
    import os, pip
    pip_args = [ '-vvv' ]
    proxy = os.environ['http_proxy']
    if proxy:
        pip_args.append('--proxy')
        pip_args.append(proxy)
    pip_args.append('install')
    for req in REQUIREMENTS:
        pip_args.append( req )
    print('Installing requirements: ' + str(REQUIREMENTS))
    pip.main(initial_args = pip_args)

    # do it again
    from setuptools import find_packages
    from distutils.core import setup
    from Cython.Distutils import build_ext as cython_build
    import sortedcollection
票数 11
EN

Stack Overflow用户

发布于 2018-07-07 12:54:38

要使其工作,打开ez_setup.py文件,只需在这一行的http后面添加一个s

代码语言:javascript
运行
复制
DEFAULT_URL     = "http://pypi.python.org/packages/%s/s/setuptools/" % sys.version[:3]

所以它变成了

代码语言:javascript
运行
复制
DEFAULT_URL     = "https://pypi.python.org/packages/%s/s/setuptools/" % sys.version[:3]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12966147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档