Python3基础之import和from import的用法和区别

一、模块和包

1、模块

一个 python 的文件就叫做模块(module),如 xxx.py。模块就是一组功能的集合体,我们的程序可以导入模块来复用模块里的功能。

2、包

一个包含有__init__.py 文件的目录或文件夹就叫做包(package)。在 pycharm 中选择 python package 创建的目录就是一个包。

二、模块和包的作用

1、方便管理

随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理。这时我们不仅仅可以把这些文件当做脚本去执行,还可以把他们当做模块来导入到其他的模块中,实现了功能的重复利用

2、提升开发效率

我们也可以下载别人写好的模块然后导入到自己的项目中使用,可以极大地提升我们的开发效率

3、包的本质就是一个文件夹,那么文件夹唯一的功能就是将文件组织起来

随着功能越写越多,我们无法将所以功能都放到一个文件中,于是我们使用模块去组织功能,而随着模块越来越多,我们就需要用文件夹将模块文件组织起来,以此来提高程序的结构性和可维护性

三、模块和包的使用

项目结构如下图所示,要求:在 test.py 下调用模块文件中的变量、函数等。

➤module1.py 中代码

➤module2.py 中代码

1、方式一:from 模块 import 变量/函数/类

格式:from module import var,func,cls

注意:导入模块名和当前的 py 文件必须在同一级目录

例如:实现在 test.py 中调用 module2 模块中的内容

2、方式二:from 模块 import 变量名 as 其他变量名

格式:from module import var as other_var

例如: 要求test.py 中存在有与 module2 相同的变量名,要求同时使用 2 个变量名

3、方式三:from 包.模块 import 变量/函数/类

格式:from pkg.module import var,func,cls

例如:实现在 test.py 中调用 module1 模块中的内容

4、方式四:from 包 import 模块

格式:from pkg import module

注意:调用模块中的变量、函数和类名时,要用模块名。变量或者模块名。函数或者模块名。类名方式来调用

例如:实现在 test.py 中调用 module1 模块中的内容

5、方式五:from 模块 import *(不推荐)

格式:from module import *

注意:这种方式是将模块中的所有变量、函数和类名导入,不推荐使用这种方式,容易导致名字重复的冲突。

例如:实现在 test.py 中调用 module2 模块中的内容

6、方式六:import 变量/函数/类

格式:import var,func,cls

注意:python 的内置模块可以使用这种方式,也可以用 from module import var,func,cls 方式来进行代替

例如:实现在 test.py 中调用内置模块 time 中的内容

四、import和from import的区别

import和from import都是用来引入其他模块或包的关键字。它们之间的区别在于引入的方式和作用范围

  1. import:使用import关键字可以引入整个模块或包,并且在使用其中的函数、类或变量时需要通过模块名来访问。例如:import module_name,然后使用module_name.function_name()来访问模块中的函数。

  1. from import:使用from import关键字可以从模块或包中直接引入特定的函数、类或变量,而不需要通过模块名来访问。例如:from module_name import function_name,然后直接使用function_name() 来访问函数。

平时的编码过程中,我们推荐使用:import 模块名,然后再 模块名.xxx来调用的形式,会让代码更加清晰,更好维护。禁止使用from xxx import *这种写法,它会给你带来无穷无尽的噩梦。

参考链接:https://mp.weixin.qq.com/s/L-ZL9Rffgff81f_WQWScXg

### 回答1: Python中的importfrom都是用来导入模块的关键字。 import用法import module_name 这种方式导入模块后,需要使用module_name.函数名的方式来调用模块中的函数。 from用法from module_name import function_name 这种方式导入模块后,可以直接使用函数名来调用模块中的函数,不需要再加上模块名。 例如: import math print(math.sqrt(16)) # 输出4. from math import sqrt print(sqrt(16)) # 输出4. ### 回答2: Python 中的 import from 是两种不同的导入模块的方式。 importimport 是一种将一个模块中的所有函数、类、变量等都导入到当前程序中的方式。使用 import 可以导入一个模块,然后使用该模块中的函数、类等各种属性。使用 import 导入模块时,必须使用模块名进行调用。例如: ```python import math print(math.sqrt(2)) ``` fromfrom 是将一个模块中指定的内容导入到当前程序中的方式。使用 from 可以指定导入一个模块中的某个函数、类、变量等。当使用 from 时,可以直接使用导入的函数、类等属性,不需要加上模块名,例如: ```python from math import sqrt print(sqrt(2)) ``` 使用 from 导入模块中的部分代码时,代码的重复使用程度模块的可读性会有所提高。但是需要注意的是,应该避免使用 from 导入过多的内容,因为这会使代码变得混乱,增加程序难以维护的风险。对于一个项目中的模块,通常使用 import 的方式导入,而对于特定的场景或模块中的特定功能,可以使用 from 的方式导入。 ### 回答3: 在Python中,importfrom都是用来引入其它模块中的代码的关键字。它们之间的差异在于对被引用模块中变量的命名方式用法上有所区别import用法: 当我们使用import来引入模块时,我们必须使用模块名来访问其中的变量方法,这样引入的模块就会成为一个独立的命名空间。例如下面的代码,我们导入math模块并使用其中的sqrt函数来计算一个数的平方根: import math x = math.sqrt(4) print(x) 输出结果为2.0,这里我们使用了math模块提供的sqrt函数来计算4的平方根。 from用法: 与import不同,from关键字的作用是从模块中导入特定的变量方法到当前作用域中,而不需要使用模块名来访问它们。例如,我们可以使用下面的语法导入math库中的sqrt函数,并直接调用它来计算一个数的平方根: from math import sqrt x = sqrt(4) print(x) 输出结果也是2.0。这里我们使用了from关键字将sqrt函数导入到当前作用域中,并直接调用它来计算4的平方根。 需要注意的是,在使用from关键字时,虽然我们不需要使用模块名来访问变量方法,但是这个变量或方法在当前作用域中仍然需要有一个名字来标识它,否则引用它时会因为找不到标识符而报错。例如,下面的语句导入了math库中的sqrt函数: from math import sqrt 如果我们在程序中想要调用sqrt函数,但是却没给它一个名字来标识它,那么程序将无法找到它并报错。因此,我们需要像这样给变量或方法定义一个名字: from math import sqrt x = sqrt(4) print(x) 在这个例子中,我们将sqrt函数导入到当前作用域中,并将它命名为x,这样我们就可以通过x来访问sqrt函数。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值