Python3入门(七)——模块
在Python中,一个.py文件就称之为一个模块(Module)。(例如main.py就称之为main模块)
为了避免模块名冲突,Python又引入了按目录来组织模块的方法,称为包(Package)。
每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存在的(使用pycharm建包时会自动创建),可以为空,也可以有代码
一、使用模块
一个模块定义的模板如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*- """这是一个测试模块"""
__author__ = '江北' import sys def test():
args = sys.argv
if len(args) == 1:
print("hello world!") if __name__ == "__main__":
test()
第一行/第二行:注释,分别用于Linux下直接执行以及指定编码
第三行:文档注释,任何模块的第一个字符串都视为文档注释。根据pycharm的提示,建议使用三引号(triple)
第四行:亮明身份,表明作者。当然和其他IDE一样,以上几行都可以通过设置为模板,在新建时自动生成(将在pycharm使用教程中介绍)
以上是推荐使用的模板
使用模块的第一步,是导入模块:
import sys
导入后便可以使用变量sys来指向并使用该模块了。
形如from...import可以只引入模块中的部分name:
from modname import name1[, name2[, ... nameN]]
相关细节可以参考https://www.cnblogs.com/lidagen/p/7090777.html
python模块中变量的作用域:
1.普通变量是公开的,例如abc,age
2.形如"__name__"的是特殊变量,可以直接引用,自己的变量一般不要使用这种变量
3.形如"_count"和"__count"(一个和两个下划线)的变量是私有变量,一般不应该被公开直接访问(但python中没有强制限制不能访问,为了规范,请不要公开访问私有变量)私有变量和私有函数都不应该被公开访问,模块公开普通公开函数即可
二、安装第三方模块
1.python包管理工具
Python中的包管理工具,叫pip
unix系统中不用再次安装pip了,直接运行pip即可(python3请尝试pip3)
windows中在安装时确保勾选了pip(默认是安装了的,自定义安装时不要勾掉即可):

如果没有。恭喜。。卸载重装吧。重装时记得勾选pip和add to path了!
2.python库在哪
第三方库一般来说会在https://pypi.org/注册(有点儿像maven中央仓库了)
配置pip源,和配置maven仓库类似:https://www.cnblogs.com/microman/p/6107879.html
3.Python如何安装库
例如,安装一个图像处理库Pillow的命令如下:
pip install Pillow
// 静待安装完成即可
4.anaconda
这是一个基于Python的数据处理和科学计算平台,它已经内置了许多非常有用的第三方库,我们装上Anaconda,就相当于把数十个第三方模块自动安装好了,非常简单易用。
下载好后再次在命令行运行python可以看到anaconda的信息。这个时候可以直接使用例如numpy等第三方库了!
更多介绍,参考知乎,
5.模块搜索路径
使用Import导入模块时:
import mymodule
默认会在当前路径、内置模块、已安装第三方模块中搜索模块,内置模块的路径在sys模块的path中:
pycahrm的console:
import sys
sys.path
['F:\\Program Files\\JetBrains\\PyCharm 2018.1.1\\helpers\\pydev', 'F:\\Program Files\\JetBrains\\PyCharm 2018.1.1\\helpers\\pydev', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\python36.zip', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\DLLs', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\lib', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages', 'F:\\Program Files\\JetBrains\\PyCharm 2018.1.1\\helpers\\pycharm_matplotlib_backend', 'F:\\py\\lenarPy', 'F:/py/lenarPy']
cmd命令行
>>> import sys
>>> sys.path
['', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\python36.zip', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\DLLs', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\lib', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36', 'C:\\Users\\zcc\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages']
>>>
添加自定义搜索路径有两种方式:
1.临时修改,运行时有效,结束后失效
>>> import sys
>>> sys.path.append('/Users/michael/my_py_scripts')
2.永久修改
添加环境变量 PYTHONPATH ,注意只添加自己的路径即可!
Python3入门(七)——模块的更多相关文章
- 全面系统Python3入门+进阶课程 ✌✌
全面系统Python3入门+进阶课程 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 无论是大数据.人工智能还是机器学习,Python都是最热门的首选语言 ,这 ...
- 【转】Python3 (入门6) 库的打包与安装
Python3 (入门6) 库的打包与安装 本文由 Luzhuo 编写,转发请保留该信息. 原文: http://blog.csdn.net/Rozol/article/details/6940288 ...
- Python3中正则模块re.compile、re.match及re.search函数用法详解
Python3中正则模块re.compile.re.match及re.search函数用法 re模块 re.compile.re.match. re.search 正则匹配的时候,第一个字符是 r,表 ...
- Python爬虫入门七之正则表达式
在前面我们已经搞定了怎样获取页面的内容,不过还差一步,这么多杂乱的代码夹杂文字我们怎样把它提取出来整理呢?下面就开始介绍一个十分强大的工具,正则表达式! 1.了解正则表达式 正则表达式是对字符串操作的 ...
- python3入门之类
在面向对象的语言中,类是最重要的一环,python自然拥有类这个机制.python的类机制,与C++,java的区别不是很大,类的大多数的重要特性都被沿用了,一样可以多态,抽象,封装: python3 ...
- python3入门之赋值语句介绍
获得更多资料欢迎进入我的网站或者 csdn或者博客园 本节主要介绍赋值语句,以及几种特殊的赋值.下面附有之前的文章: python3入门之print,import,input介绍 python入门之字 ...
- python3入门之print,import,input介绍
本节主要介绍print,import和input,t函数,包括他们在python2.7和python3 的区别以及用法.下面附有之前的文章: python3的print函数的变化 python3之 ...
- python3入门之字典
获得更多资料欢迎进入我的网站或者 csdn或者博客园 本节主要介绍字典,字典也成映射,时python中唯一内建的映射类型.更多详细请点击readmore.下面附有之前的文章: python入门之字符串 ...
- Python3入门之软件安装
获得更多资料欢迎进入我的网站或者 csdn或者博客园 最近将我的Python笔记整理下,希望能对他人有所帮助,这是第一课,安装入门篇: windows下安装Python 1.下载,从这里下载:[下载链 ...
- 转 Python爬虫入门七之正则表达式
静觅 » Python爬虫入门七之正则表达式 1.了解正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串 ...
随机推荐
- webstorm技巧
webstorm安装后的一些设置技巧: 如何更改主题(字体&配色):File -> settings -> Editor -> colors&fonts -> ...
- Python笔记(十):正则表达式
正则表达式对比工具 https://pan.baidu.com/s/1XIPyF1vFSj5PACPx9zW8_g (一) 正则表达式符号和特殊字符 符号 说明 示例 | 或 re1|re2 ...
- go语言练习:文件哈希
package main import ( "crypto/sha256" "encoding/hex" "fmt" "io&qu ...
- 使用 Chef 自动执行 Azure 虚拟机部署
Chef 是一个强大的工具,用于提供自动化和所需的状态配置. 使用我们的最新 cloud-api 版本,Chef 提供了与 Azure 的无缝集成,使得你能够通过单个命令设置和部署配置状态. 在本文中 ...
- Sysstat的工具集sar、 iostat、mpstat、sadf、sar、sadc
sysstat Sysstat的工具集sar. iostat.mpstat.sadf.sar.sadc * iostat 工具提供CPU使用率及硬盘吞吐效率的数据: * mpstat 工具提供单个处理 ...
- [Spark Core] Spark 使用第三方 Jar 包的方式
0. 说明 Spark 下运行job,使用第三方 Jar 包的 3 种方式. 1. 方式一 将第三方 Jar 包分发到所有的 spark/jars 目录下 2. 方式二 将第三方 Jar 打散,和我们 ...
- 【转】Linux思维导图
[原文]https://www.toutiao.com/i6591690511763898888/ 1.Linux学习路径: 2.Linux桌面介绍: 3.FHS(文件系统目录标准): 4.Linux ...
- 2.2Python基础语法(二)之运算符
返回总目录 目录: 1.Python运算符的分类 2.算数运算符 3.复合运算符 4.比较运算符 5.逻辑运算符 (一)Python运算符的分类: (二)算数运算符: 注意下面三种算数符号: 1.** ...
- 系统升级win7 sp1后,ado,MSJRO.tlh error 问题
MSJRO.tlh() : error C2501: '_RecordsetPtr' : missing storage-class or type specifiers MSJRO.tlh() : ...
- flexible.js结合rem实现移动端自适应布局
1. 配置开发工具(sublime)插件 https://github.com/flashlizi/cssrem 注意: 只有在‘.css’后缀文件才能使用此插件功能 2. 在h ...