import的使用

首先来看一个例子:

import math
print(math.pi)#输出3.141592653589793

上面的程序使用了import语句,import math的意思是从Python标准库中引入math.py模块,这是Python中定义的引入模块的方法

可以用如下方法引入多个模块:import math,time,sys

除了用import引入模块外,还有另一种方式引入模块,如:from math import pi

表示从math模块引入pi到当前命名空间,该语句不会将整个math模块导入,比如math模块中还有sin,exp函数,在这个语句中就使用不了,而在导入整个math模块的语句中可以使用

import math
print(math.pi)
print(math.sin(1))
print(math.exp(2))
#输出:
3.141592653589793
0.8414709848078965
7.38905609893065
from math import pi
print(pi)
print(sin(1))
print(exp(1))
#输出
3.141592653589793
Traceback (most recent call last):
  File "D:/practice/python program/practice2.py", line 7, in <module>
    print(sin(1))
NameError: name 'sin' is not defined

由以上示例可以看出,如果导入整个模块,就会得到整个模块中的所有对象,如果导入指定的某个对象,就只能得到该对象

这样做有什么好处呢,看下面示例:

import math
print(math.pi) print(pi)
#输出
3.141592653589793
Traceback (most recent call last):
  File "D:/practice/python program/practice2.py", line 7, in <module>
    print(pi)
NameError: name 'pi' is not defined
from math import pi
print(pi)
#输出
3.141592653589793

可以发现,如果在导入math模块时访问pi对象,需要使用math.pi,直接使用pi访问不了,会报错,但使用from math import pi 语句后,可以直接访问pi对象,不需要加上模块名进行访问

也可以用逗号分隔一次导入同一个模块的多个对象:from math import pi,sin,exp

还可以一次导入同一个模块的所有对象:from math import *   不过不建议这样使用,不利于代码的清晰

还可以为模块取别名,如:import math as m  

import math as m
print(m.pi)

可见给模块取别名的方式为:在导出模块的语句末尾增加一个as语句,as后面跟上别名

也可以为函数取别名,如:from math import sin as s   我们为sin函数取了别名s

猜你喜欢

转载自www.cnblogs.com/cjluchen/p/8961754.html