Python CLI

pydaw的Python项目详细描述


蟒蛇

一种python命令行接口(cli),它使用数字信号处理(dsp)执行数字音频工作站(daw)操作。 技术和算法。 用于创建此自述文件的模板如下所述。

沙布隆纳

生成状态

shablona是小型科学python项目的模板项目。这个 我们在这里提出的建议遵循了 科学巨蟒生态系统。遵循这些标准和建议 将使其他人更容易使用您的代码,并使您更容易 将代码移植到其他项目并与此项目的其他用户协作 生态系统。

项目组织

该项目具有以下结构:

pythoncli/
  |- README.md
  |- pythoncli/
     |- __init__.py
     |- __main__.py
     |- classmodule.py
     |- effectsmodule.py
     |- funcmodule.py
     |- loadingmodule.py
     |- resamplemodule.py
     |- supereffectmodule.py
  |- pythoncli.egg-info/
     |- dependency_links.txt
     |- entry_points.txt
     |- PKG-INFO
     |- SOURCES.txt
     |- top_level.txt
  |- setup.py
  |- install.sh
  |- LICENSE
  |- .gitignore

在下面的部分中,我们将逐一检查这些元素。第一, 让我们考虑一下这个项目的核心。这是里面的代码 pythoncli/\uu main.py。此文件中提供的代码 简单。它实现了一些简单的命令,将每个命令从认为是终端的输入字符串路由到其特定的文件。

模块代码

我们将模块代码放在名为 pythoncli。此结构是为项目创建结构的简单方法, 我们还需要在\uu init\uuu.py中创建一个包含导入的代码的文件 将该文件中的所有内容放入项目的命名空间中:

from .effectsmodule import *

在模块代码中,我们遵循以下约定:所有函数都是 从其他地方导入,或在以下行之前的行中定义 使用这个功能。这有助于代码的可读性,因为您知道如果 你看到一些名字,这个名字的定义会出现在文件的前面, 或者作为函数/变量定义,或者从其他模块导入 或包装。

安装

对于安装和分发,我们将使用python标准 库distutils模块。此模块使用setup.py文件 找出如何在特定系统上安装软件。对于一个 像这样的小项目,管理软件的安装 模块和数据相当简单。

这也使得使用pip易于安装,这是python软件的包管理器。这个 setup.py文件从中读取此信息并将其传递给 设置处理其余部分的功能。

持续集成

仍然没有选择连续的重组/部署方法。

分布

发布python软件的主要场所是python 包索引,或pypi,也很有名 作为"奶酪店"。

要在pypi上分发软件,您需要在 pypi。 建议您使用 捆绳

使用travis,你可以自动上传你的软件到pypi, 每次您将软件标签推送到github时。说明书 在设置时可以找到 这里。你需要 安装travis命令行界面

许可

<麻省理工学院L冰。 版权所有2019 Peter Hassaballah 兹免费授予获得本软件及相关文档文件(以下简称"软件")副本的任何人使用本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再授权的权利,和/或出售软件的副本,并允许向其提供软件的人员这样做,但须遵守以下条件:

上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。

本软件按"原样"提供,不作任何形式的明示或默示保证,包括但不限于适销性保证、特定用途适用性保证和非侵权性保证。在任何情况下,作者或版权所有人都不对任何索赔、损害赔偿或其他责任负责,无论是在诉讼或合同、侵权行为或其他方面,由软件或软件的使用或其他交易引起、产生或与之相关。

脚本

脚本目录可以用作您的 模块代码,并作为生成包含 叙述结构,演示代码的使用,或生成 从你的代码和数据中得到的科学结果以及计算一个故事 使用这些元素。

例如,这个存储库包含一个 在一些数据中,创建一个图形。也许这是图1 未来的文章?你可以看到这个笔记本被完全渲染了 这里

SRipt示例: pip安装-e. 它允许在pip目录中更新项目,因为它注册为正在开发或开发模式中

Git配置

当前存储库中有一个文件有助于工作 有了这个存储库,您可以进一步扩展它:

  • .gitignore--故意指定未跟踪的文件(搜索 编译的*.pyc文件),通常不应提交给 git(请参见man gitignore

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用split函数分割字符串,但没有得到期望的结果   未找到包含derby数据库嵌入架构的sql Java桌面应用程序错误   java elasticsearch vs solr用于定制全文搜索系统   java Android:创建没有startOffset的动画延迟?   java如何查看其他应用程序接收的数据?   java如何在Linux中使用D和classpath选项运行jar文件   java和域设计最佳实践   具有相同内存位置的java数组,将显示为输出   连接到java中的elasticsearch?   Java Playframework重定向到带有Json负载的外部url   java无法在Android平台上使用InputStream为蓝牙socket创建ObjectInputStream   使用POI将Excel日期转换为Java日期,年份未正确显示   oracle从数据库层还是Java层调用webservice?