模块的原理:

1.就是一个python文件

2.标准模块是python自带的

3.第三方模块需要自己安装

导入模块的顺序:

1.从当前目录下找

2.从python的环境变量中找

一、自己定义的模块

1、第一种导入模块方式

导入的python文件和当前python文件在同一个文件夹下

 1 #一种是import方式
2 #import a,c,d可以导入多个py文件
3 import a,sys#import一个模块就是将这个模块里的代码执行一遍
4 print(a.name)
5 a.func()
6
7 #一种是from方式
8 from a import func,name
9 func()
10 print(name)

2、第二种导入模块方式

引入不在当前文件夹下的py文件

2.1 第一种将py文件放在python的环境变量的目录下

调用sys.path,找到python的环境变量,将需要引入的py文件放到其中的一个目录下,就可以进行调用

1 import sys
2 print(sys.path)#打印出python的环境变量
3 import tools#将tools.py放到C:\Anaconda3\Lib\site-packages目录下,可以直接引入
4 print(tools.fun('fdsrewrwrw'))

2.2 第二种把要引用的文件夹加入到python的环境变量中

1 #2、tools.py在G:\\pythonWorkspace\\day003目录下,把要引入的文件夹加到环境变量中
2 #sys.path.append('G:\\pythonWorkspace\\day003')#这个是加在环境变量的末尾,效率不高
3 sys.path.insert(0,r'G:\pythonWorkspace\day003')#r:源字符,加到最前面,效率高
4 print(sys.path)
5 import tools
6 print(tools.fun('fdsrewrwrw'))

2.3 第三种需要引入的py文件和当前文件在同一个工作空间下

1 #一种方式
2 #import day003
3 #print(day003.tools.fun('fdsrekwrwjl'))#这种方式会报错
4
5 from day003 import tools#这种方式没问题
6
7 from day003.tools import fun#这种方式没问题
8 result = fun('fdsrewrew')
9 print(result)
1 #import day003
2 #print(day003.tools.fun('fdsrekwrwjl'))#这种方式会报错
3 #想要解决这种报错
4 #1.在day003下,建一个__init__.py文件
5 #2.在day004下import day003
6
7 import day003
8 print(day003.tools.fun('rewsdfsfs'))
__init__.py文件的内容如下:
 1 from . import tools 

二、第三方模块

第三方模块需要安装,可以自动安装(电脑联网情况下),手动安装(电脑不联网的情况下)

第三方模块都在pypi  pip源这个网站这里可以找到

2.1 自动安装

执行命令:pip install xpinyin

可以进行自动安装,但是默认的pip源是国外的,有可能会导致下载失败

将pip源改为国内的地址的办法,执行以下代码,就可以将pip源改为国内的地址

 1 import os,sys,platform
2 ini="""[global]
3 index-url = https://pypi.doubanio.com/simple/
4 [install]
5 trusted-host=pypi.doubanio.com
6 """
7 os_version=platform.platform()
8 if 'Windows' in os_version:
9 os_flag=False
10 file_name='pip.ini'
11 else:
12 os_flag=True
13 file_name='pip.conf'
14 if os_flag==True:
15 pippath=os.environ["HOME"]+os.sep+".pip"+os.sep
16 else:
17 pippath=os.environ["USERPROFILE"]+os.sep+"pip"+os.sep
18 if not os.path.exists(pippath):
19 os.mkdir(pippath)
20 with open(pippath+file_name,"w") as f:
21 f.write(ini)

2.2 手动安装

1.在pip源找到对应的资源,比如plmysql

2.安装.whl格式的文件

执行命令:pip install /Users/nhy/Downloads/PyMySQL-0.9.3-py2.py3-none-any.whl

3.安装.tar格式的文件

  a.解压

  b.进入解压目录

  c.python setup.py install

三、常用模块

3.1 random模块

 1 import random
2 num1 = random.randint(1,100)#随机整数
3 print(num1)
4 f1 = random.uniform(1,100)#随机小数
5 print(f1)
6 s = 'frewrewrw'
7 l = [1,2,3,4]
8 t = [12,13,34]
9 #res1 = random.choice()#从你给的数据里随机选一个
10 res2 = random.sample(l,3)#从list中随机取N个元素
11 #print(res1)
12 print(res2)
13
14 l2 = [str(i) for i in range(14)]
15 print(l2)
16 random.shuffle(l2)#洗牌,打乱
17 print(l2)

python使用笔记008-模块的更多相关文章

  1. python学习笔记_week5_模块

    模块 一.定义: 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能), 本质就是.py结尾的python文件(文件名:test.py,对应模块名:test) 包:用来从逻辑上 ...

  2. Python学习笔记之模块与包

    一.模块 1.模块的概念 模块这一概念很大程度上是为了解决代码的可重用性而出现的,其实这一概念并没有多复杂,简单来说不过是一个后缀为 .py 的 Python 文件而已 例如,我在某个工作中经常需要打 ...

  3. python学习笔记(八)-模块

    大型python程序以模块和包的形式组织.python标准库中包含大量的模块.一个python文件就是一个模块.1.标准模块 python自带的,不需要你安装的2.第三方模块 需要安装,别人提供的. ...

  4. Python学习笔记-常用模块

    1.python模块 如果你退出 Python 解释器并重新进入,你做的任何定义(变量和方法)都会丢失.因此,如果你想要编写一些更大的程序,为准备解释器输入使用一个文本编辑器会更好,并以那个文件替代作 ...

  5. Python学习笔记1—模块

    模块的使用 引用模块的两种形式 形式一: import module_name 形式二: from module1 import module11   (module11是module的子模块) 例: ...

  6. Python学习笔记2——模块的发布

    1.为模块nester创建文件夹nester,其中包含:nester.py(模块文件): """这是"nester.py"模块,提供了一个名为prin ...

  7. python学习笔记十——模块与函数

    第五章 模块与函数 5.1 python程序的结构 函数+类->模块              模块+模块->包                 函数+类+模块+包=Python pyth ...

  8. Python学习笔记14—模块

    在python中所有的模块都被加入到了sys.path中,用下面的方法可以看见模块的位置. >>> import sys >>> import pprint > ...

  9. python学习笔记:模块——自定义模块的3种导入方式

    一.定义 模块就是用一堆的代码实现了一些功能的代码的集合,通常一个或者多个函数写在一个.py文件里,而如果有些功能实现起来很复杂,那么就需要创建n个.py文件,这n个.py文件的集合就是模块.如果不懂 ...

  10. Python学习笔记—itertools模块

    这篇是看wklken的<Python进阶-Itertools模块小结> 学习itertools模块的学习笔记 在看itertools中各函数的源代码时,刚开始还比较轻松,但后面看起来就比较 ...

随机推荐

  1. Selenium click不生效 报错selenium.common.exceptions.InvalidArgumentException

    记录在使用selenium过程中踩的坑------ 在使用selenium时,用click点击网站弹出的文件上传框的"上传文件"按钮不生效,报错selenium.common.ex ...

  2. gasshopper之python电池输出dict结构

    问题:gh 直接用 panel 是无法直接输出字典结构的 故需要用 zip() 函数将字典的keys()  values() 组成一个元组,可以直接输出: 实例: dict = {} for i in ...

  3. 深入浅出Promise

    Abstract Promise的意思是承诺(在红宝书中翻译为期约),新华字典:(动)对某项事务答应照办. Promise最早出现在Commn JS,随后形成了Promise/A规范. Promise ...

  4. Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读

    Action4D:人群和杂物中的在线动作识别:CVPR209论文阅读 Action4D: Online Action Recognition in the Crowd and Clutter 论文链接 ...

  5. 3D点云完美匹配

    3D点云完美匹配 The Perfect Match: 3D Point Cloud Matching with Smoothed Densities 地址链接: http://openaccess. ...

  6. 什么是GStreamer?

    什么是GStreamer? GStreamer是用于创建流媒体应用程序的框架.基本设计来自俄勒冈大学研究生院的视频管道以及DirectShow的一些想法. GStreamer的开发框架使编写任何类型的 ...

  7. C#搞跨平台UI,封装Cef作为Cpf的控件支持Windows,Linux,Mac

    终于封装完成了,采用离屏渲染方式,支持JS和C#互相调用,C#方法自动绑定到JS里,中文输入有自动调整输入法位置. 基于开源的CefGlue 移植,本来想用CefSharp,不过这个里面有很多C++的 ...

  8. RF中在测试用例集上设置标签

    1.有时候我们在执行测试用例时只想执行部分测试用例集下面的测试用例,这时可以在相应的测试用例集中设置标签,然后运行时选择标签执行对应的测试用例 语法: *** Settings *** Force T ...

  9. oracle 11g查看alert日志方法

    一.第一种方法 1.切换到oracle用户 su - oracle 2.进入sqlplus窗口 sqlplus / as sysdba 3.执行sql命令,查看trace文件位置:background ...

  10. RAC+DG修改sys密码

    一.版本: 操作系统版本:SUSE 11 数据库版本:11.2.0.4 二.需求 因安全要求,需要修改SYS密码 三.步骤 1节点执行命令: alter user sys identified by ...