python学习之模块

#########模块与包######
1.模块
在 Python 中,一个.py文件就称之为一个模块(Module)。
•大大提高了代码的可维护性;
•编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用;

调用模块时用import 包名
eg
#hello模块
def add(x,y):
    return x+y
def jian(x,y):
    return x-y
def ch(x,y):
    return x*y
def chu(x,y):
    return x/y
#调用hello模块
import hello
print hello.jian(10,3)

print hello.add(5,8)


#导入模块的三种方式
所有以.py结尾的都可以认为是一个模块,逻辑上组织python代码(函数,变量,类)

#1
import hello    #直接导入hello模块,使用方法:hello.chu(7,5)
print hello.chu(7,5)
#2
from hello import chu    #导入hello模块中的chu方法:chu(8,3)
print chu(8,3)
#3
from hello import jian as myjian    #如果当前py包含add方法,但仍要使用hello模块中的add函数,可以对该函数进行重命名
def add(x,y):
    return x+y+9

print myjian(4,6)



1.1导入模块的灵活应用
添加路径,让路径搜索时导入相应的自定义模块
In [1]: import sys

In [2]: sys.path



In [3]: sys.path.append('/root/PycharmProjects/hello/')    #添加搜索路径

In [4]: sys.path
Out[4]:
['',
 '/usr/bin',
 '/usr/lib64/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/usr/lib64/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages/gtk-2.0',
 '/usr/lib/python2.7/site-packages',
 '/usr/lib/python2.7/site-packages/IPython/extensions',
 '/root/.ipython',

 '/root/PycharmProjects/hello/']



In [5]: import hello        #导入模块

In [6]: hello.add(3,4)
Out[6]: 7

In [10]: sys.path.remove('/root/PycharmProjects/hello/')    #删除搜索路径

In [11]: sys.path
Out[11]:
['',
 '/usr/bin',
 '/usr/lib64/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/usr/lib64/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages/gtk-2.0',
 '/usr/lib/python2.7/site-packages',
 '/usr/lib/python2.7/site-packages/IPython/extensions',

 '/root/.ipython']



In [12]: sys.path.insert(0,'/root/PycharmProjects/hello/')    

In [13]: sys.path
Out[13]:
['/root/PycharmProjects/hello/',
 '',
 '/usr/bin',
 '/usr/lib64/python27.zip',
 '/usr/lib64/python2.7',
 '/usr/lib64/python2.7/plat-linux2',
 '/usr/lib64/python2.7/lib-tk',
 '/usr/lib64/python2.7/lib-old',
 '/usr/lib64/python2.7/lib-dynload',
 '/usr/lib64/python2.7/site-packages',
 '/usr/lib64/python2.7/site-packages/gtk-2.0'
 '/usr/lib/python2.7/site-packages',
 '/usr/lib/python2.7/site-packages/IPython/extensions',

 '/root/.ipython']


1.2模块的分类
内置模块(os,sys,dnspython,socket,time,excel)
开源模块(BeautifulSoup,flask,django,css,html,bootstrap,node,js)
如果不同的人编写的模块名相同怎么办?为了避免模块名冲突,Python 又引入了按目录来组织模块的方法,称为包(Package)包
创建包的步骤:
    创建一目录为包名;
    在该文件夹下创建__init__.py文件存放包的信息,该文件可以为空;
    根据需要存放脚本文件,已编译的扩展及子包;
可以用import,import as,from import等语句导入模块和包;
eg: 包名为HELLO,生成包后自动生成__init__.py文件  模块名为hello.py   hello1.py为执行命令脚本调用hello.py模块

import 其实是在解释执行HELLO包的__init__.py文件




2.作用域
在一个模块中,我们可能会定义很多函数和变量,但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用。
在 Python 中,是通过 _ 前缀来实现。比如__author__ , __name__就是特殊变量的,__func__,__fun为私有函数,不能直接引用。
3.安装第三方模块
- 需要联网 ;
- 通过 setuptools 这个工具完成;
- pip install 包名 或 pycharm中安装;模块搜索路径
- 当我们试图加载一个模块时,Python 会在指定的路径下搜索对应的.py 文件;
- 默认情况下,Python 解释器会搜索当前目录、所有已安装的内置模块和第三方模块,搜索路径存放在 sys 模块的 path 变量中;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python学习模块.rar是一个压缩文件,里面包含了Python学习相关的模块Python是一种流行的高级编程语言,有着简洁、易读易学的特点,广泛应用于软件开发、数据分析、人工智能等领域。 学习Python的时候,使用模块是一种很好的方式。模块可视为一组相关的功能代码集合,可以被其他程序导入和使用。Python模块大致分为两类:内置模块和第三方模块。内置模块Python自带的模块,可以直接使用;而第三方模块是由Python社区或其他开发者提供的,需通过pip等工具进行安装。 Python学习模块.rar可能包含了许多常用的学习模块,如numpy、pandas、matplotlib等。numpy是一个开源的数值计算库,提供了高性能的多维数组对象和操作函数,常用来处理科学计算中的矩阵运算;pandas是一个用于数据分析的库,提供了高效的数据结构和数据分析工具,能够方便地处理和分析数据;matplotlib是一个用于绘图和数据可视化的库,可以生成各种类型的图表和图像。 使用Python学习模块.rar可以加快学习Python的速度,节省编写重复代码的时间。通过学习这些模块,可以掌握更多的Python技巧和扩展功能,进一步提升编程能力。同时,由于这些模块都是经过广泛应用和验证的,所以使用它们也能够提供更加稳定和可靠的解决方案。 总之,Python学习模块.rar是一个有用的资源,对于初学者和进阶者都可以提供帮助。通过学习和使用其中的模块,可以更好地掌握Python编程,并在实际项目中有效地运用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值