我们经常会把一些参数写到配置文件中,例如这样:
我么会在global_settings.py中写入自己的参数例如:
import os
from datetime import datetime
#directory to save weights file
CHECKPOINT_PATH = 'checkpoint'
#total training epoches
EPOCH=100
MILESTONES = [10,30,40,100]
#initial learning rate
#INIT_LR = 0.1
DATE_FORMAT = '%A_%d_%B_%Y_%Hh_%Mm_%Ss'
#time of we run the script
TIME_NOW = datetime.now().strftime(DATE_FORMAT)
#tensorboard log dir
LOG_DIR = 'runs'
#save weights file per SAVE_EPOCH epoch
SAVE_EPOCH = 10
然后调用配置文件中的参数时会
from conf import settings
settings.CHECKPOINT_PATH
settings.EPOCH
settings.MILESTONES
然而这在jupyternotebook中需要使用函数才能实现,
from datetime import datetime
# 然后继续使用你的 Settings 类
class Settings:
def __init__(self):
self.CHECKPOINT_PATH = 'checkpoint'
self.DATE_FORMAT = '%A_%d_%B_%Y_%Hh_%Mm_%Ss'
self.TIME_NOW = datetime.now().strftime(self.DATE_FORMAT)
self.EPOCH=100
settings = Settings()
# 在代码中使用 settings.CHECKPOINT_PATH 形式的变量
if not os.path.exists(settings.CHECKPOINT_PATH):
os.makedirs(settings.CHECKPOINT_PATH)
这样调用就和.py文件中的一样了。
settings.CHECKPOINT_PATH
settings.EPOCH
settings.MILESTONES
有时候在jupyternobody中运行.py文件,这样改动就可以了。