0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详解Python项目推荐结构

python爬虫知识分享 来源:python爬虫知识分享 作者:python爬虫知识分享 2022-03-28 15:56 次阅读

在真正项目中,一般使用PyCharm或VSCode开发。那有的小伙伴就问了,项目文件目录有没有一个标准的结构?

应该没有唯一的统一标准,但Python社区大佬Kenneth Reitz在2013年提出一个Python项目目录结构,推荐你日后项目中参考。

Python项目推荐结构
Kenneth推荐目录结构,如下所示:

samplemod-master
├── LICENSE
├── MANIFEST.in
├── Makefile
├── README.rst
├── docs
│   ├── Makefile
│   ├── conf.py
│   ├── index.rst
│   └── make.bat
├── requirements.txt
├── sample
│   ├── __init__.py
│   ├── core.py
│   └── helpers.py
├── setup.py
└── tests
   ├── __init__.py
   ├── context.py
   ├── test_advanced.py
   └── test_basic.py
一共3个文件夹,17个文件。

先来看看第一个文件夹docs,它是项目相关文档,包括依赖包安装的Makefile和make.bat,项目配置conf.py,项目介绍文档index.rst,是比README.rst更细化的一个文档,README.rst更像一个项目总览。

第二个文件夹sample,在Python中一般叫做包(package),它是项目核心代码,一般会有多个这种包,__init__.py是Python包包括的文件。core.py和helpers.py是sample包里两个核心模块。

第三个包tests,是对应于sample包的单元测试包,里面的模块名称一般以test开头,测试sample里的每个模块。

setup.py是做什么的?
有了上面三个最主要的包外,文件最重要的有setup.py,这个文件是做什么的?

简单来说,setup.py是和打包相关的配置模块,一般结合setuptools。

有了setup.py,我们就可以安装包到本地全局环境,或者上传到PyPi,这样全世界开发者都有机会搜索到你的包,并使用pip安装上你的包。

里面代码相对比较标准和固定,比如在这个项目里代码如下:

from setuptools import setup, find_packages

with open('README.rst') as f:
   readme = f.read()
with open('LICENSE') as f:
   license = f.read()
setup(
   name='sample',
   version='0.1.0',
   description='Sample package for Python-Guide.org',
   long_description=readme,
   author='Kenneth Reitz',
   author_email='me@kennethreitz.com',
   url='https://github.com/kennethreitz/samplemod',
   license=license,
   packages=find_packages(exclude=('tests', 'docs'))
)

看到这里面用到README.rst和LICENSE文件,并且指定打哪些包分发出去。
审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 结构
    +关注

    关注

    1

    文章

    117

    浏览量

    21559
  • python
    +关注

    关注

    55

    文章

    4777

    浏览量

    84404
收藏 人收藏

    评论

    相关推荐

    python训练出的模型怎么调用

    使用pickle模块 pickle 是Python的一个内置模块,用于序列化和反序列化Python对象结构。使用 pickle 可以方便地保存和加载模型。 import pickle # 保存模型
    的头像 发表于 07-11 10:15 1512次阅读

    用pycharm进行python爬虫的步骤

    提供了许多有用的功能,如代码自动完成、调试和版本控制等。您可以从JetBrains的官方网站下载PyCharm,并根据您的需求选择免费社区版或付费专业版。 创建一个新的Python项目 打开
    的头像 发表于 07-11 10:11 668次阅读

    python中open函数的用法详解

    python中open函数的用法详解 Python中的open()函数用于打开文件。它接受文件名和模式作为参数,并返回一个文件对象。文件对象可用于读取、写入和管理文件。 open()函数的基本语法
    的头像 发表于 01-30 15:31 1909次阅读

    Python智能家居系统代码介绍

    Python智能家居系统是一种基于Python编程语言开发的智能家居控制系统,在现代家庭中得到了越来越广泛的应用。本文将详细介绍Python智能家居系统的代码实现,包括系统的结构与功能
    的头像 发表于 01-25 09:46 1238次阅读

    pycharm怎么配置python环境变量

    PyCharm 是一种以 Python 为主的集成开发环境 (IDE),它提供了一系列的功能用于开发、调试、测试和部署 Python 程序。在使用 PyCharm 开发 Python 项目
    的头像 发表于 11-29 14:56 2700次阅读

    python idle在哪里找到

    Python IDLE是一种集成开发环境(Integrated Development Environment,简称IDE),用于编写和运行Python语言的代码。它是Python官方提供的标准
    的头像 发表于 11-29 14:39 1032次阅读

    详解高密 PCB走线布线的垂直导电结构 (VeCS)

    详解高密 PCB走线布线的垂直导电结构 (VeCS)
    的头像 发表于 11-28 17:00 1526次阅读
    <b class='flag-5'>详解</b>高密 PCB走线布线的垂直导电<b class='flag-5'>结构</b> (VeCS)

    python怎么运行程序

    Python是一种广泛使用的编程语言,它的简易和可读性使得它成为初学者和专业开发人员的首选。在运行Python程序之前,您需要安装Python解释器,然后按照以下步骤进行操作。 步骤1:安装
    的头像 发表于 11-24 09:25 2479次阅读

    windows7可以安装python什么版本

    Windows 7可以安装多个Python版本,以下是适用于Windows 7的常见Python版本: Python 2.7:Python 2是2.x系列的最后一个版本,它是许多旧代码
    的头像 发表于 11-23 17:15 2.8w次阅读

    Python2与Python3的差异

    Python2与Python3是两个不同的版本,它们在语法、功能和性能等方面存在一些差异。下面是对Python2和Python3的详尽、详实、细致的比较,分为以下几个方面: 语法差异:
    的头像 发表于 11-23 16:48 888次阅读

    python写完程序之后怎么运行

    Python程序的执行流程有更深入的了解。 一、Python程序的基本结构 Python程序是由一系列的语句构成,语句是指一行代码或多行代码组成的指令集合。一个
    的头像 发表于 11-22 11:10 958次阅读

    pycharm中python interpreter怎么设置

    在PyCharm中设置Python解释器非常简单,只需按照以下步骤操作: 打开PyCharm,并打开你的项目。 在菜单栏中选择"File"(文件),然后选择"Settings"(设置)。在
    的头像 发表于 11-22 11:08 2979次阅读

    python输出list的每一个元素

    Python是一种简单易学的编程语言,广泛应用于各个领域中。而处理列表(list)是Python中非常常见的操作之一。在Python中,列表是用来存储多个值的一种数据结构
    的头像 发表于 11-21 16:16 1465次阅读

    python列表和数组的区别

    Python是一种功能强大的编程语言,为开发者提供了许多数据结构来处理和操作数据。其中,列表和数组是常用的数据结构,用于存储和组织一系列元素。在本文中,我们将详细比较Python中的列
    的头像 发表于 11-21 15:13 2230次阅读

    python里item的用法

    item是Python中一个非常重要的概念,它可以用于多种数据结构和算法的实现。在Python中,item通常用于表示一个集合或序列中的一个元素。本文将详细介绍item的用法,并探讨它在列表、字典
    的头像 发表于 11-21 15:09 3446次阅读