首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python:在一组已发布的文件中提供YAML支持,而无需用户手动安装PyYAML或libYAML

python:在一组已发布的文件中提供YAML支持,而无需用户手动安装PyYAML或libYAML
EN

Stack Overflow用户
提问于 2013-04-12 23:59:43
回答 2查看 564关注 0票数 0

我正在试图找到一种方法,在我发布给我的一些同事的一小部分Python脚本中解析YAML。

这些用户很聪明,但却是电气工程方面的专家,他们在编程或软件安装方面的专业知识很少,所以我需要让他们尽可能容易地使用我的脚本。

他们的Python环境要么是从python.org下载的普通Python2.7发行版,要么是免费版本的Enthought Python Distribution。两者都没有安装PyYAML或libYAML。

因此,我的两难境地是如何在我分发的脚本中包含YAML支持。

我不希望我的最终用户通过easy_install或pip;这对我来说相当容易,但他们可能会遇到问题,就像我第一次尝试查找setuptools.py时所做的那样。此外,他们可能没有根/管理员访问权限来安装额外的系统包( this SO question中提到的python可能由IT人员预先安装在他们的计算机上)。

对于如何在这些情况下解析YAML文件,您有什么建议吗?

EN

回答 2

Stack Overflow用户

发布于 2013-04-13 02:48:58

有什么原因不能在您分发的文件中包含YAML解析器的Python源代码吗?

PyYAML声称包含一个纯Python实现,因此将其与您的包捆绑在一起应该是相当简单的。

如果您只是解析包含在分发文件中的YAML文件,那么另一种选择可能是将它们预转换为Python的基库可以处理的其他格式。

票数 2
EN

Stack Overflow用户

发布于 2013-04-13 05:01:47

根据阿亚的建议,我将PyYaml发行版(https://bitbucket.org/xi/pyyaml/src )中的/lib/yaml目录复制到我的脚本目录中:

代码语言:javascript
复制
+ my-python-scripts
|
+-- myScript.py
|
+-+ yaml
  |
  +-- __init__.py
  +-- composer.py
  +-- constructor.py
  .
  .
  .

然后我可以在我的脚本中使用import yaml,它工作得很好。不需要全局安装。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15975915

复制
相关文章

相似问题

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