目录:

一、笔记

二、笔记目录

一、笔记

1) 模块

① Python模块(Module),是一个Python文件,以.py结尾,包含了Python语句和Python对象定义,模块让你能够有逻辑地组织你的Python代码段。

② 相当于很多类、很多函数包含在一个.py文件,这个.py文件就是一个模块。

③ 模块能定义函数,类和变量,模块里也能包含可执行的代码,即导入模块会自动执行这些代码。

④ 把相关的代码分配到一个模块里能让你的代码更好用,更易懂。

⑤ 推荐所有的模块在Python模块的开头部分导入,而且最好按照下面的顺序:1. Python标准库模块

2. Python第三方模块

3. 应用程序自定义模块

⑥ 在Python中用关键字import来引入某个模块,比如要导入模块time,就可以在文件最开始的地方用import time来引入。

# functools就是模块,是一个functools.py文件,该文件在搜索在搜索路径下的,reduce是这个文件中的一个方法。

from functools import reduce

2) import

① import A1. 在调用模块中的函数时,必须加上模块名调用,因为可能存在多个模块中含有相同名称的函数,此时,如果只是通过函数名来调用,解释器无法知道到底要调用哪个函数。为了避免这样的情况,调用函数时,必须加模块名。

2. import time 等价于 from time import *,即把time模块中的所有方法都导入。

import time

# 第一个time是模块,第二个time是方法,要用模块加方法的形式,因为不同模块可能有相同的方法

print(time.time())

运行结果:1605406639.2172427

import time

# print(sleep(2)) # 会报错,它不知道sleep()方法是哪个模块中的,所以不会去调用

print(time.sleep(2)) # 不报错,仅导入模块时,一定要用 模块.方法 的形式

运行结果:None

② from A import b1. 不会把整个模块导入进来,只会把A模块的b方法导入进来(相当于把这个方法写在文件的开头),不能写模块名。

2. 从A模块里导入一个函数或者一个变量 b。

3. from导入模块,import导入类名,实例化时可直接用类名了。

from time import time # 仅仅导入了time模块中time方法

print(time()) # 不会报错,不用加模块名

# print(time.time()) # 报错,相当于仅仅把time方法写在本文件头部,不能加模块名

# print(sleep(1)) # 报错,除非用 from time import time,sleep

# print(time.sleep(1)) # 报错,除非用 import time

运行结果:1605406786.6635635

③ import A as b1. 将A重新命名为b。

# time重命名为t

import time as t

print(t.time()) # 等价于原来的 print(time.time()),但重命名后不可以用 print(time.time())

#print(time.time()) # 报错,无法再用time作为模块名

运行结果:1611287703.3578482

④ from A.B.c import d1. 软件项目来说不可能把所有代码放在一个文件中实现,它们一般会按照一定规则在不同的目录和文件中实现,然后互相调用。

2. 从当前路径下,A文件夹下B文件夹下的c模块中,导入d方法

'''

import p 调用本文件的当前目录下的 p模块

import C.c1 调用当前路径下的C文件夹下的c1.py模块

import C.c2 import c5 调用当前路径下的C文件夹下的c2.py模块中的c5方法

'''

3) 模块内置属性

① __doc__ 为打印文档说明(只能在文件的最开始,import前面,在后面的字符串不会打印),即文档中的字符串。

② __file__为打印本文件的路径。

③ __all__打印过滤变量、函数和类。

'''

import b1

print(__doc__)

print(__file__) # 打印本模块的路径

print(__all__)

print(b1.__doc__)

print(b1.__file__) # b1模块的路径

print(b1.__all__)

'''

4) __all__

① 因为模块中可能包含大量的不需要的变量、函数和类,可以通过设置 __all__起到过滤变量、函数和类的作用,变量 __all__ 包含一个列表。

② 在以import * 方式导入时,会导入任意不以下划线打头的全局名词,有 * 的时候才跟 __all__ 搭配使用, 通过__all__起到过滤。

③ 直接用import b1时,即导入b1模块的时候,在b1模块即使有__all__是没有影响的,可以使用b1模块中的任何变量、函数和类。

④ 模块中不使用__all__属性,则导入模块内的所有共有属性,方法和类。

'''

# 以下是b1文件里代码

__all__ = ['b3','S','b4',b5] # 当用from b1 import * 只能用b3、b4和类S,可以需要过滤的b5,但是未赋值

b3 = 1

b4 = 2

clas S:

pass

def s():

pass

'''

'''

# 当前文件下代码

from b1 import * # 导入b1模块,用 * 使得调用 __all__

b4 = 5

print(b3) # 可以打印b3,为1

print(b4) # 这里打印b4,为5

k = S() # 可以类的实例化

s() # 无法调用函数s()

'''

5) if __name__ == '__main__':

① 当调入别的模块时,通常在模块中写 if __name__ == '__main__': 这样能避免调用其他模块时,这些模块中的函数运行了,但是 if __name__ == '__main__' 以外的函数、变量、类都会运行,相当于把这些抄到了文件的头部,直接运行。

# 以下是b1.py模块内容

print("宝贝入怀")

if __name__ == '__main__':

print("你好")

'''

import b1 # 导入b1模块,会自动运行 if __name__ == '__main__'以外内容,就会打印print("宝贝入怀")

print(__name__) # 代码在当前文件中跑,该模块的文件名__name__不是文件名,而是__main__。

if __name__ == '__main__':

print(b1.__name__) # 导入另一个模块的代码,另一个模块的文件名__name__是文件名b1。

'''

二、我的笔记

01 笔记--Python [ 整理完 ]

02 笔记--机器视觉 [ 整理完 ]

03 笔记--C++ [ 整理完 ]

04 笔记--爬虫 [ 整理ing ]

三、Python 目录

1) Python 编辑器

2) Python 基础

03) Python 难点

04) Python 常用的库

[Python系列 已完结]

( C++、机器视觉、爬虫......系列笔记,见专栏 )

"♥我的笔记,希望对你有帮助♥"

python module是干什么的_如何最简单、通俗地理解Python的模块?相关推荐

  1. python方向是干什么的_学好Python能做什么?python就业方向有哪些?

    学好Python能做什么?python就业方向有哪些?下面就跟着一起来看看吧! 近年来,Python市场火爆,从业人员薪资不断增加,选择学Python的人也在逐年增多.然而,很多人学Python只是盲 ...

  2. python手机端编程环境_移动端自动化测试解决方案(Appium + Python) - (1) 环境搭建...

    最近对iOS自动化测试做了一番探究,希望通过自动化测试更好的去提高公司项目的测试效率 .在网上找了很多的文章和相关资料,都因为时间比较久导致无法实现基本环境的搭建,我在这儿分享给大家分享我的实现过程. ...

  3. python中digits什么意思_在Caffe中使用 DIGITS自定义Python层

    Caffe 使得我们有了使用Python自定义层的能力,而不是通常的C++/CUDA.这是一个非常有用的特性,但它的文档记录不足,难以正确实现本演练将向您展示如何使用DIGHT来学习实现Python层 ...

  4. python 数组合并排重_并排深度学习:Julia vs Python

    python 数组合并排重 Julia could possibly be the biggest threat to Python. For a variety of applications, J ...

  5. python下载之后无法启动_安装后启动时,适用于Python的Eric IDE崩溃

    On Windows 7 I successfully installed Python 3.73 and then installed Eric 6, the Python IDE. 安装似乎已成功 ...

  6. 为什么一个程序中变量只能定义一次_#带你学Python# 从简单程序出发理解Python基本语法

    欢迎回来. 通过上一篇文章,我们第一次触摸了Python,学会了如何用各种不同的方式运行Python的解释器.也介绍了很多工具和开发环境,是不是跃跃欲试了? 到这里,别的python教程就会从数据类型 ...

  7. python难度大的题_早看少被坑!Python 最难的问题

    超过十年以上,没有比解释器全局锁(GIL)让Python新手和专家更有挫折感或者更有好奇心. 未解决的问题 随处都是问题.难度大.耗时多肯定是其中一个问题.仅仅是尝试解决这个问题就会让人惊讶.之前是整 ...

  8. python构造方法与java区别_一张图秒懂Java和Python的区别,你知道吗?

    对于程序员的语言千千万JAVA\C\C++\PHP\Python不同的程序员使用着不同的语言,做着功能相似需求却不同的产品. 但是最近Python在人工智能的推动下突然出现在人们的面前,其实和Java ...

  9. python有什么用处案例_为什么大家都推荐你学python?看完这5个例子就明白了!...

    为什么大家都推荐你学Python?而不是C语言或者是JAVA呢? 因为-- python很灵活,一定程度上函数也可以传参和注入,所以代码的灵活性要大的多. python自带了函数的curry化以及迟滞 ...

最新文章

  1. WF4.0进行单元测试
  2. python中查询某个函数的使用方法
  3. 存储系统的类型及特点
  4. 如何线程安全的使用HashMap
  5. 操作系统内存管理之 内部碎片vs外部碎片
  6. 近期低分纯生信友好的期刊简介
  7. python入门需要什么基础知识_Python 基础之:入门必备知识
  8. js 遍历对象的几种方法
  9. mysql 把一列转多行_Oralce 按分隔符把一列转成多行
  10. [leetcode]476. 数字的补数
  11. python类中的特殊方法_Python中类的初始化特殊方法
  12. Adobe各种最新版本软件下载 PhotoShop Dreamweaver FW Ai Fl.....
  13. 如何寻找综述性论文?
  14. 斐波那契常见规律(总结)
  15. 买卖二手3C成了“拆盲盒”,究竟是谁之责?
  16. 百度seo指南_白杨SEO:如何让网页被百度收录以及提高它的排序?
  17. 360 ie8兼容模式 网页兼容问题
  18. SWUSTOJ #954 单链表的链接
  19. 2017长乐国庆欢乐赛Day1
  20. 微信小程序动态点赞php,微信小程序小组件 基于Canvas实现直播点赞气泡效果

热门文章

  1. 第一章 计算机、程序和Java概述 复习题 解答
  2. Microsoft Ajax Beta1 - 边学边用边补充 (Part 2 - DragDropList)
  3. C#使用Aspose.Words操作word文档(利用模板2)
  4. uni-app 实现点击列表隐藏显示
  5. IOS开发之CALayer基本属性和使用
  6. docker安装测试及问题解决
  7. SQL注入——基于报错的注入(五)
  8. 教师计算机校本培训记录,信息技术教师个人校本培训总结
  9. css实现loading,CSS3 19种LOADING(加载)动效
  10. linux 快速启动程序,在Linux上安装ULauncher快速启动应用程序的方法