1. import用法
使用 Python 进行编程时,有些功能不必自己实现,可以借助 Python 现有的标准库或者其他人提供的第三方库。
最常用的格式包括2种
(1)直接使用import加载模块,需要使用模块功能时,采用(模块名.函数名)或者(模块别名.函数名)的格式,如下:
import 模块名
import 模块名 as 别名
import 模块.子模块 as 别名
使用方法举例如下:
import numpy as np # 加载numpy模块,并重命名为np
import torch # 加载torch模块
import torch.nn as nn # 加载torch.nn模块
word_freqs = np.array(list(word_freqs.values())) # 使用numpy的array函数
a = torch.randn(1,2,3,4,5) # 使用torch模块
self.conv1 = nn.Conv2d(1, 20, 5) # 使用torch.nn模块
(2)对于某个模块中常用的成员,可以单独拿出,这样在使用时可以直接使用成员的函数名,不需在前面加上模块名,如下:
from 模块名 import 成员名
from 模块名 import 成员名 as 别名
使用方法举例如下:
from torch.nn import Conv2d # 上面例子中的函数Conv2d单独拿出
self.conv1 = Conv2d(1, 20, 5) # 使用时不用加模块名nn
form...import 导入模块成员时,支持一次导入多个成员:
from 模块名 import 成员名1,成员名2
from 模块名 import 成员名1 as 别名1,成员名2 as 别名2
注意:可以使用 ( from 模块名 import * ) 导入模块内的所有成员,但不建议使用,因为它存在潜在的风险。比如同时导入module1 和 module2 内的所有成员,假如这两个模块内都有一个A() 函数,那么当在程序中执行A()时,无法确认这个函数到底是 module1 模块中的还是 module2 模块中的。所以导入模块内所有成员时,应直接使用 ( import 模块名 ) 的方式。
如果需要分别调用这两个模块中的 A() 函数,可以这样做:
import module1
import module2
module1.A()
module2.A()