模块让你能够有逻辑地组织你的Python代码段。把相关的代码分配到一个 模块里能让你的代码更好用,更易懂。

模块也是Python对象,具有随机的名字属性用来绑定或引用。

简单地说,模块就是一个保存了Python代码的文件。模块能定义函数,类和变量。模块里也能包含可执行的代码。

例子

一个叫做aname的模块里的Python代码一般都能在一个叫aname.py的文件中找到。下例是个简单的模块support.py。

def print_func( par ):   print "Hello : ", par   return

import 语句

想使用Python源文件,只需在另一个源文件里执行import语句,语法如下:

import module1[, module2[,... moduleN]

当解释器遇到import语句,如果模块在当前的搜索路径中就会被导入。搜索路径是一个解释器会先进行搜索的所有目录的列表。

一个模块只会被导入一次,不管你执行了多少次import。这样可以防止导入模块被一遍又一遍地执行。

From…import 语句

Python的from语句让你从模块中导入一个指定的部分到当前命名空间中。语法如下:

from modname import name1[, name2[, ... nameN]]

例如,要导入模块fib的fibonacci函数,使用如下语句:

from fib import fibonacci

这个声明不会把整个fib模块导入到当前的命名空间中,它只会将fib里的fibonacci单个引入到执行这个声明的模块的全局符号表。

From…import* 语句

把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:

from modname import *

这提供了一个简单的方法来导入一个模块中的所有项目。然而这种声明不该被过多地使用。

定位模块

当你导入一个模块,Python解析器对模块位置的搜索顺序是:

  • 当前目录

  • 如果不在当前目录,Python则搜索在shell变量PYTHONPATH下的每个目录。

  • 如果都找不到,Python会察看默认路径。UNIX下,默认路径一般为/usr/local/lib/python/

模块搜索路径存存储在system模块的sys.path变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录

PYTHONPATH变量

作为环境变量,PYTHONPATH由装在一个列表里的许多目录组成。PYTHONPATH的语法和shell变量PATH的一样。

在Windows系统,典型的PYTHONPATH如下:

set PYTHONPATH=c:\python20\lib;

在UNIX系统,典型的PYTHONPATH如下:

set PYTHONPATH=/usr/local/lib/python

转载于:https://blog.51cto.com/ypyu1989/1535679

python模块学习(1)相关推荐

  1. python textwrap_python2.7.3编译python模块学习- textwrap 文本包装和填充

    python模块学习- textwrap 文本包装和填充 代码实例: sample_text = ''' The textwrap module can beused to format text f ...

  2. Python模块学习 - 用tinify模块压缩和优化图片

    Python模块学习 - 用tinify模块压缩和优化图片 tinify模块 功能描述:TinyPNG和TinyJPG网站提供了压缩和优化.png和.jpg格式图片的功能.虽然可以很轻松地使用网页版进 ...

  3. Python模块学习 ---- zlib 数据压缩

    Python模块学习 ---- zlib 数据压缩 目录(?)[+] Python标准模块中,有多个模块用于数据的压缩与解压缩,如zipfile,gzip, bz2等等.上次介绍了zipfile模块, ...

  4. python模块学习笔记

    python模块学习笔记 1.Python自动发送邮件smtplib 2.制作二维码图片MyQR 3.绝对值模块math 4.CSV模块 5.openpyxl 模块,操作Excel文件 ExcelMa ...

  5. Python模块学习:glob 文件路径查找

    文章转载自<伯乐在线>原文出处: Darkbull Python模块学习:glob 文件路径查找 glob模块是最简单的模块之一,内容非常少.用它可以查找符合特定规则的文件路径名.跟使用w ...

  6. 解惑Python模块学习,该如何着手操作...

    Python模块 晚上和朋友聊天,说到公司要求精兵计划,全员都要有编程能力.然后C.Java.Python-对于零基础入门的,当然是选择Python的人较多了.可朋友说他只是看了简单的语法,可pyth ...

  7. Python模块学习-----optparse

    作用:一种类似于dos命令行的一种设计模块,例如:dos命令中添加-f会触发一种事件           可以自定义一些指令,用来完成某些操作 optparse.OptionParser() opti ...

  8. 【Python模块学习】pandas模块简介

    pandas模块学习 一.背景概述 Pandas (Python Data Analysis Library) 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的. numpy更加适用 ...

  9. Python模块学习

    阅读目录 第一篇:Python模块之netmiko 第二篇:Python模块之junos-eznc 第三篇:Python模块之pexpect 第四篇:Python模块之paramiko 第五篇:Pyt ...

最新文章

  1. 来认识世界上第一支AI基金:模仿股票分析师 365天无间断工作
  2. 使用 Artifactory 1分钟搭建 CocoaPod 私服
  3. 静态反调试技术(2)
  4. HTML5开发手机应用--viewport的作用--20150216
  5. laydate.render报错:日期格式不合法
  6. apache工作模式
  7. 学习《apache源代码全景分析》之摘录
  8. ES: 机器学习、专家系统、控制系统的数学映射
  9. 【汇编语言】清华大学学堂在线《汇编语言程序设计》课程学习笔记
  10. leetcode 387 C++数组做法
  11. (转)#ifndef的用法
  12. 信息学奥赛一本通 1309:【例1.6】回文数(Noip1999) | 洛谷 P1015 [NOIP1999 普及组] 回文数
  13. 给定一个0-1串,请找到一个尽可能长的子串,其中包含的0与1的个数相等。
  14. 前端—每天5道面试题(1)
  15. [SHOI2008]堵塞的交通traffic
  16. Spring Boot + Prometheus + Grafana 打造可视化监控,一目了然!
  17. CSS学习总结(2)——选择器
  18. MMKV_高性能MMKV数据交互分析-MMKV初始化
  19. win10硬盘速度测试软件,最好的硬盘检测工具
  20. k8s查看token,discovery-token-ca-cert-hash

热门文章

  1. The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
  2. 基于Linux的Socket编程之TCP全双工Server-Client聊天程序
  3. 【Linux系统编程学习】信号、信号集以其相关函数
  4. 【微机原理与接口技术】具体芯片(1)并行接口8255A(1):全局观
  5. 信号捕捉(signal、sigaction)
  6. 流程控制语句(bash)
  7. 【原创】数据库中为什么不推荐使用外键约束
  8. 记自己在spring中使用redis遇到的两个坑
  9. lambda显式声明返回值
  10. docker安装配置gitlab详细过程