普通例子
以正则表达式模块为例,我们经常这样写代码:
import re #import re导入的re它是一个模块(正则化模块),模块里面你可以创建很多函数。
#或者from re import search #这里import search就表明指定了这个search函数
target = ‘abc1234xyz’
re.search(’(\d+)’, target) #在模块里面有search
我们分别使用type函数来看看他们的类型:
>>> import re
>>> type(re)
<class 'module'>
>>> from re import search
>>> type(search)
<class 'function'>
一个模块里面可以包含多个函数。
如果在你的代码里面,你已经确定只使用search函数,不会再使用正则表达式里面的其他函数了。但是,如果你要使用正则表达式下面的多个函数,或者是一些常量,那么用第一种方案import re会更加简洁清晰
Python 的 datetime模块
这两种导入方式导入的datetime,虽然名字一样,但是他们的意义完全不一样,请大家观察下面两种写法:
import datetime
now = datetime.datetime.now()
one_hour_ago = now - datetime.timedelta(hours=1)
---------------------------------
from datetime import datetime, timedelta
now = datetime.now()
one_hour_ago = now - timedelta(hours=1)
第二种写法看似简单,但实则改动起来却更为麻烦。例如我还需要增加一个变量today用于记录今日的日期。
对于第一段代码,我们只需要增加一行即可:
today = datetime.date.today()
但对于第二行来说,我们需要首先修改导入部分的代码:
from datetime import datetime, timedelta, date
#然后才能改代码:
today = date.today()
导入另一个py文件写好的程序
util.py文件:
def write():
print('write 函数被调用!')
main.py文件:
import util
util.write()