python学习——模块

编程入门 行业动态 更新时间:2024-10-27 07:29:02

python学习——<a href=https://www.elefans.com/category/jswz/34/1771428.html style=模块"/>

python学习——模块

python学习——模块

1、首先要知道什么是模块:简单的来说呢就是以.py结尾的python文件,根据我的理解,任何这样的文件你都可以当成一个模块。

2、使用模块的优点

a、代码重用。
b、系统命名空间的划分。
c、实现共享服务和数据。

3、标准库模块和第三方库

这一个知识点相当重要,因为python自带了大约两百个模块,包裹GUI构建、操作系统接口等,具体我们可以查阅python标注库参考手册。

然后就是浩瀚的、功能多样的、使用方便的python的第三方库,这几乎是python最大的优点之一,其包含了从数据分析、人工智能、爬虫、GUI等等各个方面的第三方库,是python如此流行的原因之一,因此当你想要用实现某个功能时,切记找一下是否有现成的第三方库,这将会让你省去很多时间。

4、如何导入一个模块

通常来说有两种方式,一是import+模块名,import会读取整个模块,另一种方式时from+模块名+import+要读取的属性,其原理是把变量名复制到另一个作用域,所以我们在脚本中就可以直接使用变量名,不需要使用模块,下面举例介绍:

首先我们在一个名为a.py的python文件输入如下代码:

def apple(x):

print(x)

a文件的代码是创建一个函数,并传入变量,最后打印出来。如果我们想在b文件使用这个功能,即传入变量并打印出来,但是不想再写一遍代码,该怎么办呢?这时候模块的作用就出来了。

我们在名为b.py的文件可以这么写:

import a #导入a模块(文件)

a.apple("有鹿不闻“)#打印结果为 有鹿不闻

在解释这段代码前,我们先介绍一个非常重要的概念,即object.attribute(点号运算),翻译过来便是对象.属性。

我们看b文件,在这里我们导入了a模块,运用点号运算,取出模块a中名为apple的属性,这个属性的便是出入变量并打印变量,所以我们在后面的括号内传入变量“有鹿不闻”,最终结果也是打印出来。

第二种导入模块的方式是使用from语句。我们在一个名为c.py的文件中输入如下代码:

from a import apple

apple(”有鹿不闻“)#打印结果为 有鹿不闻

我们看到用from语句与import语句有些许不同,但结果是一样的,因为from语句的原理是把变量名复制到另一个作用域,所以我们在脚本中就可以直接使用变量名,不需要使用模块,也就是说我们从 a模块导入了apple这个属性,所以只需传入变量给apple就可以了。

5、单元测试,即_name与main_,注意,这个语法十分十分常用,再 强调 也不为过 ,同学们牢记。下面举例说明。

我们在一个名为d.py的文件输入如下代码:

def orange()print(“marry chrismas")if _name_=='_main_':orange()

一般情况下,我们要实现一个功能,只需前两行代码就够了,为什么还写了后两行代码呢?这就是所谓的单元测试。

试想一下,如果这个文件是一个十分复发的文件,代码足足有500行,你肯定会试着运行一下程序,看程序是否报错对吧。

所以当这个文件作为一个程序执行时,name_的值就是_main,此时运行orange函数,测试脚本是否可以执行。

而当文件作为模块被导入时,name_则为文件的名字,不等于_main,此时orange函数不会执行,文件就会作为一个模块被导入。

在这里我总结了一句话,同学们牢记:

作为程序执行时,name=main,后续代码执行

作为模块导入时,name≠main,后续代码不执行。

6、模块搜素路径

相信有心 同学 奇怪 ,在导入模块时为什么没有给出文件具体的路径,那么python如何 知道 文件在哪呢?这就跟python特殊的模块搜索路径有关 了 。

首先,python有四个 搜索 路径 ,即:

a、程序的主目录

b、PYTHONPATH目录(需设置)

c、标准链接库目录

d、任何.pth 文件 内容

那么 如何 查看我们的搜索目录呢?可以使用如下代码:

感谢阅读!!!

更多推荐

python学习——模块

本文发布于:2023-07-28 22:06:04,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1335984.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:模块   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!