当前位置: 首页 > 编程笔记 >

python中如何打包用户自定义模块

班言
2023-03-14
本文向大家介绍python中如何打包用户自定义模块,包括了python中如何打包用户自定义模块的使用技巧和注意事项,需要的朋友参考一下

假设需要打包的模块文件名为my.py,打包模块需要新建的一个脚本setip.py,然后在脚本下输入如下的内容:

from disutils.core import setup
setup{name = 'my',version = '1.0',py_modules = ['my']}

以管理员身份运行cmd,进入my.py的目录,执行下面的命令即可打包:

python setup.py sdist

运行后在该目录下方出现一个文件夹dist,进入这个文件夹,会出现一个my-1.0.zip文件。
将该压缩包放在sys.path的目录下,解压,以管理员身份运行cmd,进入解压的目录,执行下方的命令即可自动安装my模块。

python setup.py install

完成安装后,即可加载my模块:

import my

知识点扩展:

自定义模块

自定义模块(也就是私人订制),我们要自定义模块,首先就要知道什么是模块

一个函数封装一个功能,比如现在有一个软件,不可能将所有程序都写入一个文件,所以咱们应该分文件,组织结构要好,代码不冗余,所以要分文件,但是分文件,分了5个文件,每个文件里面可能都有相同的功能(函数),怎么办?所以将这些相同的功能封装到一个文件中.

模块就是文件,存放一堆函数,谁用谁拿。怎么拿?

模块是一系列常用功能的集合体,一个py文件就是一个模块

为什么要使用模块?

1、从文件级别组织程序,更方便管理

随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理。这时我们不仅仅可以把这些文件当做脚本去执行,还可以把他们当做模块来导入到其他的模块中,实现了功能的重复利用

2、拿来主义,提升开发效率

同样的原理,我们也可以下载别人写好的模块然后导入到自己的项目中使用,这种拿来主义,可以极大地提升我们的开发效率,避免重复造轮子。

ps:

如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过python meet.py方式去执行,此时meet.py被称为脚本script。

'''
-*- coding: utf-8 -*-
@Author : Meet
@Software: PyCharm
@File  : meet.py
'''
print('from the meet.py')

name = 'guoboayuan'

def read1():
  print('meet模块:',name)

def read2():
  print('meet模块')
  read1()

def change():
  global name
  name = 'meet'

到此这篇关于python中如何打包用户自定义模块的文章就介绍到这了,更多相关python打包用户自定义模块方法内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • 我想在任何目录的任何脚本中导入自定义编写的函数,就像在任何脚本中导入请求模块一样。我正在运行Ubuntu和Python 3.9 编辑:我按照本教程完成了我的要求-https://packaging.python.org/tutorials/packaging-projects/

  • 问题内容: 我正在尝试在Go中创建和使用自定义包。这可能很明显,但是我找不到很多信息。基本上,我在同一个文件夹中拥有这两个文件: mylib.go main.go 当我尝试时,出现此错误: 我尝试先运行,但似乎没有做任何事(没有生成文件,没有错误消息)。所以有什么想法我该怎么做? 问题答案: 首先,请务必阅读并理解“如何编写Go代码”文档。 实际答案取决于您“定制包装”的性质。 如果打算用于一般用

  • 我正在尝试在Go中创建和使用自定义包。这可能是非常明显的事情,但我找不到有关此的太多信息。基本上,我在同一个文件夹中有这两个文件: mylib。去 主要的去 当我尝试时,我得到这个错误: 我试着运行,但它似乎什么都没做(没有生成文件,没有错误消息)。你知道我该怎么做吗?

  • 主要内容:自定义模块编写说明文档到目前为止,读者已经掌握了导入 Python 标准库并使用其成员(主要是函数)的方法,接下来要解决的问题是,怎样自定义一个模块呢? 前面章节中讲过,Python 模块就是 Python 程序,换句话说,只要是 Python 程序,都可以作为模块导入。例如,下面定义了一个简单的模块(编写在 demo.py 文件中): 可以看到,我们在 demo.py 文件中放置了变量(name 和 add)、函数(

  • 我无法在gradle项目中添加自定义源代码集。如何初始化这里的版本号?我的gradle文件看起来像:

  • 总结 如何在Django MongoEngine中使用自定义用户模型和自定义身份验证后端(允许电子邮件/密码身份验证)?(这是否需要自定义后端?…即,在使用MongoEngine进行身份验证时使用电子邮件作为用户名。) 是否有直接(完整)的文档在Django中进行身份验证时,将Mongo用作主数据存储时使用自定义用户对象的示例?(博士后有如此清晰和全面的文档…) 细节 MongoEngine似乎只