模块:在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位。

在我们编程的时候我们如果将所有的文件都放在那个py文件中,我们的py文件会很大,这样也很不好维护。

所以我们会把他们分成各个模块

并且,如果我们在写程序的时候我们可能会多次使用到同一个变量,如果他们放在同一个模块当中,就会出问题,但是如果我们将他们放在不同的文件当中,就不会出问题。

#a.util
x = a
def fn(x) #b.util
x = b
def fn(x)

类似于这样的,就不会出现问题。

同时由于python是一种新型语言,它的模块在一直更新,这个时候,很可能会出现,两个人写了拥有相同的名字的模块,这个时候如果我们引用的话,就会报错,所以Python为了解决这个问题,就出现了的概念:

当我们在写完一个模块之后我们会把它保存在一个包当中,这个时候如果我们引用的话就会代带着包一起去引用,这个时候就不会出问题

#原文件名:a.util,在math包下
from A import a.util
print (a.util.fn(x)) #在biology包下的a.util
from B import a.util
print (a.util.fn(x))

上面的from...import就是导入模块的意思

#导入模块的方式
1.import 模块
这种方式,是讲模块的所有的方法,全都引用进来。 2.from 模块 import 方法名
这种方法是将这个模块里面的几个方法引用进来。 3.from 模块 import 方法名 as 别名
这种是为了防止我们在引用方法的时候,其他的模块也有类似的同名的方法,这是一种处理的方法。

在我们进行导入模块的时候,如果该模块不存在,系统就会报错

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named something

如上,由于python是动态语言,是解释执行的,但是为了能够将代码的运行速度变快的话我们就需要用其他的语言来进行编写,再来导入。

try:
from cStringIO import StringIO
except ImportError:
from StringIO import StringIO

这上面的模块就是两个具有相同功能的模块,但是StringIO使用python语言写的,cStringIO是使用c语言写的。

try 的作用是捕获错误,并在捕获到指定错误时执行 except 语句

Python的新版本会引入新的功能,但是,实际上这些功能在上一个老版本中就已经存在了。要“试用”某一新的特性,就可以通过导入__future__模块的某些功能来实现。

>>> from __future__ import division
>>> print 10 / 3
3.3333333333333335

python之模块(在命令行当中使用pip install 模块来进行模块的安装)的更多相关文章

  1. cmd命令行中无pip命令的解决办法

    cmd命令行中无pip命令的解决办法 只需简单的两步即可,按顺序执行以下命令(在cmd中): python -m ensurepip python -m pip install --upgrade p ...

  2. TensorFlow 1.2.0新版本完美支持Python3.6,windows在cmd中输入pip install tensorflow就能下载应用最新tensorflow

    TensorFlow 1.2.0新版本完美支持Python3.6,windows在cmd中输入pip install tensorflow就能下载应用最新tensorflow 只需在cmd中输入pip ...

  3. Python命令行中输入pip提示不是内部或外部命令

    WIN764位,Python34 输入命令python -m pip

  4. mvn命令着中package、install、deploy的区别

    参考:https://blog.csdn.net/zhaojianting/article/details/80324533 常用操作区别 mvn clean package 依次执行了clean.r ...

  5. 今天发现一个汉字转换成拼音的模块,记录一下,直接pip install xpinyin即可

    http://blog.csdn.net/qq_33232071/article/details/50915760

  6. 用python批量插入数据到数据库中

    既然使用python操作数据库必不可少的得使用pymysql模块 可使用两种方式进行下载安装: 1.使用pip方式下载安装 pip install pymysql 2.IDE方式 安装完成后就可以正常 ...

  7. 使用pip install mysqlclient命令安装mysqlclient失败?(基于Python)

    我们使用Django.flask等来操作MySQL,实际上底层还是通过Python来操作的.因此我们想要用Django来操作MySQL,首先还是需要安装一个驱动程序.在Python3中,驱动程序有多种 ...

  8. Python开发:在mac系统中安装pip

    pip用来安装python项目的依赖库. 大多数比较新的python版本都自带pip,所以先检查下pip是否有安装. 终端输入:pip --version 如果没有安装pip,那么就用接下来的方式安装 ...

  9. Python中的pip安装与使用

    配置python的环境变量 我们在我的电脑右击->属性->高级系统设置看到环境变量 然后我们点击环境变量,找到系统变量中的Path变量然后双击他新建一项,值为我们安装的python的pyt ...

随机推荐

  1. [转载]JDBC读写Oracle的CLOB、BLOB

    JDBC读写Oracle10g的CLOB.BLOB http://lavasoft.blog.51cto.com/62575/321882/ 在Oracle中存取BLOB对象实现文件的上传和下载 ht ...

  2. java导包

    下载响应的zip文件,就可以导入了,导入src目录也是可以的.

  3. mouseenter和hover的区别

    js中鼠标事件中,mouseenter和hover都可以达到,鼠标悬浮在目标上,触发事件,那么两者效果相同,有什么区别呢. 经过自己亲自试验.发现,mouseenter和hover还是有区别的. ho ...

  4. 64位Navicat Premium安装/破解【含资源】

    开门见山: 1/先安装Navicat Primium,双击Navicat Primium——trial_64.exe(64位) 2/安装好打开Navicat Primium,提示使用或注册时,双击Pa ...

  5. Vue在HTML页面中的脚手架

    <script src="assets/js/vue.js"></script> <script src="assets/js/vue-re ...

  6. python导入图片

    一.导入图片资源 方法1:直接从源图片中导(图片位于images文件夹内) self.label1=QLabel(self)self.label1.setPixmap(QPixmap(r"i ...

  7. JSON格式规范总结

    JSON有三类元素: 1.结构体(关键字:大括号)2.键值对(关键字:冒号)3.数组(关键字:中括号) 组织规则:结构体中放一个或者多个键值对.键只能是字符串.值可以是:字符串.数字.null.tru ...

  8. ACM学习历程—Hihocoder 1291 Building in Sandbox(dfs && 离线 && 并查集)

    http://hihocoder.com/problemset/problem/1291 前几天比较忙,这次来补一下微软笔试的最后一题,这题是这次微软笔试的第四题,过的人比较少,我当时在调试B题,没时 ...

  9. CF 949C Data Center Maintenance——思路+SCC

    题目:http://codeforces.com/contest/949/problem/C 可以想到可能是每组c有连边的可能. 但别直接给c1.c2连边,那样之后会变得很不好做. 可以把一些限制放在 ...

  10. bzoj 2242 [SDOI2011]计算器——BSGS模板

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2242 第一道BSGS! 咳咳,我到底改了些什么?…… 感觉和自己的第一版写的差不多……可能是 ...