Python进阶——项目构建、Python 项目结构。

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、模块
  • 二、模块搜索路径
  • 三、导入模块四种方法
  • 四、包
  • 五、发布模块
    • 1.创建 setup.py
    • 2.构建模块
    • 3.生成发布压缩包
  • 六、发布模块
    • 1. 创建 setup.py
    • 2.构建模块
    • 3.生成发布压缩包
  • 六、项目结构
      • 关于Python技术储备
        • 一、Python所有方向的学习路线
        • 二、Python基础学习视频
        • 三、精品Python学习书籍
      • 四、Python工具包+项目源码合集
        • ①Python工具包
        • ②Python实战案例
        • ③Python小游戏源码
        • 五、面试资料
      • 六、Python兼职渠道


前言

Python在处理功能复用和功能颗粒度划分时采用了类、模块、包的结构。


一、模块

模块,在Python可理解为对应于一个文件。在创建了一个脚本文件后,定义了某些函数和变量。你在其他需要这些功能的文件中,导入这模块,就可重用这些函数和变量。一般用module_name.fun_name,和module_name.var_name进行使用。这样的语义用法使模块看起来很像类或者命名空间

模块分为三种:

自定义模块

内置标准模块

开源模块(第三方)

模块属性__name__:

值由Python解释器设定。如果脚本文件是作为主程序调用,其值就设为main,如果是作为模块被其他文件导入,它的值就是其文件名。

#moduel1.py
def say(word):
print word]
#caller.py
import module1
print __name__
print module1.__name__
module1.say('hello')
>>>>
__main__
module1
hello

二、模块搜索路径

Python import module 的搜索路径由sys.path指定,实质为一个列表,列表索引先后决定搜索优先级。

sys.path列表优先级排序:

第一优先级为当前执行脚本的目录

第二优先级为PYTHONPATH;

第三优先级为安装位置。

通过函数添加自编译的模块

sys.path.append(PATH/filename) 加在sys.path的最后
sys.path.insert(0,PATH/filename) 加在sys.path的最前

其实增加自编译的模块较为官方的方法是通过.pth文件添加:

Ubuntu第三方模块目录名为:dist-packages

Windows和Redhat第三方模块目录名为:site-packages

在site-packages/ dist-packages添加一个路径文件,如mypkpath.pth,必须以.pth为后缀,写上你要加入的模块文件所在的目录名称就是了。

三、导入模块四种方法

import module1,module2

from 模块名 import 函数名

from 模块名 import 函数名 as 函数别名

import 模块名 as 函数别名

四、包

包名的 命名方式 和变量名一致,小写字母 + _

如果您将一个或多个模块放在 文件中,那么您有一个包。简而言之,包本质上是一个包含代码的文件夹。包实际上只是一个目录,但是所有包都必须包含一个__init__.py 文件。该文件告诉Python将目录视为包含包

常见的包结构如下:

image.png

最简单的情况下,只需要一个空的 init.py 文件即可。

导入包的方法:

import 包名.模块名
from 包名 import 模块名
import 包名(注意__init__.py函数的内容)

注意: 第一种 from 包名 import 模块名,不用在包里的__init__写入 import 模块名

pip 安装第三方模块

第三方模块 通常是指由 知名的第三方团队 开发的 并且被 程序员广泛使用 的 Python 包 / 模块

pip 是一个现代的,通用的 Python 包管理工具

提供了对 Python 包的查找、下载、安装、卸载等功能

安装和卸载命令如下:

# 将模块安装到 Python 2.x 环境
$ sudo pip install pygame
$ sudo pip uninstall pygame
# 将模块安装到 Python 3.x 环境
$ sudo pip3 install pygame
$ sudo pip3 uninstall pygame

五、发布模块

如果希望自己开发的模块,分享 给其他人,可以按照以下步骤操作:

1.创建 setup.py

setup.py 的文件
安装、部署、打包的脚本。在 setup.py 文件中写明依赖的库和版本,以便到目标机器上能够使用python setup.py install安装。

from distutils.core import setup
setup(name="hm_message", # 包名
versio

你可能感兴趣的:(python,开发语言)