Python 中的basic 语法
路径
- 路径定义:" / " 右下划线( " \ " ) 被用作转义字符,所以,文件路径作为向左的下划线。
- 相对路径:
…/ 表示当前文件所在的目录的上一级目录
./ 表示当前文件所在的目录(可以省略)
/ 表示当前站点的根目录(域名映射的硬盘目录)
表示当前目录下的代码示例:
saved_model_path = 'save/model.th'
saved_model_dict = "save/modeldict"
Python中的文件I / O:
文件打开和关闭
- 直接·打开:
file object = open(file_name [, access_mode][, buffering])
由于文件读写时都有可能产生IOError,一旦出错,后面的f.close()就不会调用。所以,为了保证无论是否出错都能正确地关闭文件,我们可以使用try … finally来实现:
try:
f = open('/path/to/file', 'r')
print(f.read())
finally:
if f:
f.close()
但是每次都这么写实在太繁琐,所以,Python引入了with语句来自动帮我们调用close()方法:
- with 语句自动close文件:
with open('/path/to/file', 'r') as f:
print(f.read())
Python 中的OS模块
路径dir的操作:
def save_model(model,name):
name_data = "BiLSTM"
directory = 'save/' + name_data
if not os.path.exists(directory):
os.makedirs(directory)
torch.save(model, directory + "/"+ name+ '-model.th')
Python 中的logging模块
Python中Pickle模块
dump()和load()
Python中的Pickle模块实现了数据序列与反序列化。
dump()和load()是数据的序列化和反序列化。
- 即把一个obj写入到file中
- 或者把file中得内容 写为一个python对象。
一、dump()方法
pickle.dump(obj, file, [,protocol])
注释:序列化对象,将对象obj保存到文件file中去。参数protocol是序列化模式,默认是0(ASCII协议,表示以文本的形式进行序列化),protocol的值还可以是1和2(1和2表示以二进制的形式进行序列化。其中,1是老式的二进制协议;2是新二进制协议)。file表示保存到的类文件对象,file必须有write()接口,file可以是一个以’w’打开的文件或者是一个StringIO对象,也可以是任何可以实现write()接口的对象。
二、load()方法
pickle.load(file)
注释:反序列化对象,将文件中的数据解析为一个python对象。file中有read()接口和readline()接口
参考资料:
https://blog.youkuaiyun.com/gdkyxy2013/article/details/80495353