相关文章推荐
痛苦的双杠  ·  python读取和保存json文件_pyth ...·  2 周前    · 
冷冷的草稿本  ·  txt文件转数组_python读取txt为数组·  2 周前    · 
体贴的松树  ·  性能测试--Jmeter随机生成/随机选取/ ...·  1 周前    · 
开朗的枕头  ·  精通 Oracle+Python,第 3 ...·  6 天前    · 
温文尔雅的青蛙  ·  python subprocess模块详解 ...·  5 小时前    · 
知识渊博的花卷  ·  原研哉_百度百科·  1 年前    · 
无聊的汉堡包  ·  英语系·  1 年前    · 
拉风的黄瓜  ·  这6位TVB女星,小时候不懂她们的颜值为啥能 ...·  1 年前    · 
苦闷的扁豆  ·  自然法学派和实证法学派论争的法伦理启示·  1 年前    · 
俊逸的长颈鹿  ·  南京紫峰大厦(江苏和南京的著名地标建筑之一) ...·  1 年前    · 
Code  ›  Python|模块,包,标准模板开发者社区
python算法 python函数 python
https://cloud.tencent.com/developer/article/1082022
骑白马的咖啡
2 年前
作者头像
double
0 篇文章

Python|模块,包,标准模板

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > 算法channel > Python|模块,包,标准模板

Python|模块,包,标准模板

作者头像
double
发布 于 2018-04-02 16:54:13
674 0
发布 于 2018-04-02 16:54:13
举报

01

.py文件-模块

一个.py文件就称之为一个模块,Module,模块使用的最大好处是大大提高了代码的可维护性。

当然,还提高了代码的复用性。

使用模块还可以避免函数名和变量名冲突,相同名字的变量完全可以分别存在不同的模块中。

但是也要注意,变量的名字尽量不要与内置函数名字冲突。

常见的内置函数:https://docs.python.org/3/library/functions.html

02

当编写的模块多了,模块的名字重复的概率就增加了。如何解决这个问题呢?

Python引入了按目录来组织模块,称为包,Package,比如:

extensions
├─ __init__.py
├─ dog.py
└─ cat.py

现在 dog.py 模块的名字就变成了 extensions.dog,

请注意,每一个package目录下面都会有一个 __init__.py 的文件,这个文件是必须有的,否则,Python就把这个目录当成普通目录,而不是一个package directory。

03

使用包中的Module

编写一个dog.py模块:

#!/usr/bin/env python3 
# -*- coding: utf-8 -*-
' a test module '
__author__ = 'jack guo'
import sys
def shout():
    args = sys.argv
    if len(args)==1:
        print('Hello, I'm afei, welcome to world!')
    elif len(args)==2:
        print('Hello, %s!' % args[1])
   else:
        print('Yes,sir')
if __name__=='__main__':
    shout()

第1行注释可以让dog.py文件直接在linux上运行;

第2行注释表示.py文件本身使用标准UTF-8编码;

第4行表示模块的文档注释;

第6行表示模块的作者;

注意最后两行代码,当我们调试dog.py时,shout()会调用,当在其他模块导入dog.py时,shout()不执行。

模块的一种标准模板

以上代码中的前六行:

#!/usr/bin/env python3 
# -*- coding: utf-8 -*-
 
推荐文章
痛苦的双杠  ·  python读取和保存json文件_python json 保存 编码
2 周前
冷冷的草稿本  ·  txt文件转数组_python读取txt为数组
2 周前
体贴的松树  ·  性能测试--Jmeter随机生成/随机选取/csv读取关键字 - Wilson_Blogs
1 周前
开朗的枕头  ·  精通 Oracle+Python,第 3 部分:数据解析
6 天前
温文尔雅的青蛙  ·  python subprocess模块详解 - 三只松鼠
5 小时前
知识渊博的花卷  ·  原研哉_百度百科
1 年前
无聊的汉堡包  ·  英语系
1 年前
拉风的黄瓜  ·  这6位TVB女星,小时候不懂她们的颜值为啥能演美人,长大后真香了 ...
1 年前
苦闷的扁豆  ·  自然法学派和实证法学派论争的法伦理启示
1 年前
俊逸的长颈鹿  ·  南京紫峰大厦(江苏和南京的著名地标建筑之一)_搜狗百科
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号