版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/deng1456694385/article/details/87563062
python-模块理解及使用
模块定义
模块的定义就是将相同类型的函数放在同一个文件下,防止函数名冲突方便管理调用.
我们创建一个xxx.py
的文件就是一个模块,我们可以直接引入并调用内部方法
>>> import demo
>>> demo.person(1,2)
name: 1 age: 2 other: {}
但是因为单个文件名的模块容易冲突,也可以将文件夹定义成一个模块,文件夹内部只需要创建一个__init__.py
的文件就行了
├─hello
│ demo.py
│ __init__.py
引入模块使用只需要
但是就算是封装了模块,也尽量不要与Python默认的模块冲突
创建模块
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
'这是一个模块文件 '
__author__ = 'hqt'
import sys
def test():
print('hello_world')
if __name__=='__main__':
test()
- 第一行注释为了模块可以直接在Unix/Linux/Mac上运行
- 第二行注释代表文件用utf-8编码格式
- 第四行是模块注释, 任何模块代码的第一个字符串被默认当成文档注释
- 第六行写上作者
if __name__=='__main__':
test()
这个的意思是当直接运行这个文件的时候,__name__
变量被赋值为'__main__'
,也就会执行下面代码,类似于java中的main
函数,自执行代码
//直接运行文件
python demo.py
hello_world
//导入模块并调用方法
>>> import demo
>>> demo.test()
hello_world
作用域
模块的作用域中我们通常用__xxx__
变量名来表示该变量是一个特殊变量,可以引用但具有特殊含义,用_xxx
或__xxx
的变量名来表示私有变量不应该直接引用,但是其实在外部其实也是可以引用的成功的,但是我们约定私有变量不应该在外部被引用,这是因为Python没有强制私有化变量的方法
安装模块
安装Python可以勾选pip
和Add python.exe to Path
,可以让系统自带安装Python模块的命令,类似于npm
安装Pillow
pip install Pillow
安装常用模块,可以直接安装Anaconda,会将系统的环境变量原本的Python指向自己的Python地址转向,这样Python中就直接自带了一些常用的模块,可以直接引入,如果需要增加这些默认的全局模块,可以直接到系统环境变量里修改,和配置其他的环境变量相同.导入一个模块时,会优先导入文件目录下的文件,文件中没有才会到系统中寻找.