本文整理汇总了Python中pygeoc.utils.FileClass.is_dir_exists方法的典型用法代码示例。如果您正苦于以下问题:Python FileClass.is_dir_exists方法的具体用法?Python FileClass.is_dir_exists怎么用?Python FileClass.is_dir_exists使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pygeoc.utils.FileClass
的用法示例。
在下文中一共展示了FileClass.is_dir_exists方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from pygeoc.utils import FileClass [as 别名]
# 或者: from pygeoc.utils.FileClass import is_dir_exists [as 别名]
def __init__(self, cf):
"""Initialization."""
# 1. Directories
self.model_dir = None
self.scenario_id = -1
if 'PATH' in cf.sections():
self.model_dir = cf.get('PATH', 'model_dir')
self.scenario_id = cf.getint('PATH', 'scenarioid')
if self.scenario_id < 0:
self.model_dir = self.model_dir + os.path.sep + 'OUTPUT'
else:
self.model_dir = self.model_dir + os.path.sep + 'OUTPUT' + str(self.scenario_id)
else:
raise ValueError("[PATH] section MUST be existed in *.ini file.")
if not FileClass.is_dir_exists(self.model_dir):
raise ValueError("Please Check Directories defined in [PATH]")
# 2. MongoDB configuration and database, collation, GridFS names
self.hostname = '127.0.0.1' # localhost by default
self.port = 27017
self.climate_db = ''
self.bmp_scenario_db = ''
self.spatial_db = ''
if 'MONGODB' in cf.sections():
self.hostname = cf.get('MONGODB', 'hostname')
self.port = cf.getint('MONGODB', 'port')
self.climate_db = cf.get('MONGODB', 'climatedbname')
self.bmp_scenario_db = cf.get('MONGODB', 'bmpscenariodbname')
self.spatial_db = cf.get('MONGODB', 'spatialdbname')
else:
raise ValueError('[MONGODB] section MUST be existed in *.ini file.')
if not StringClass.is_valid_ip_addr(self.hostname):
raise ValueError('HOSTNAME illegal defined in [MONGODB]!')
# 3. Parameters
self.plt_subbsnid = -1
self.plt_vars = list()
if 'PARAMETERS' in cf.sections():
self.plt_subbsnid = cf.getint('PARAMETERS', 'plot_subbasinid')
plt_vars_str = cf.get('PARAMETERS', 'plot_variables')
else:
raise ValueError("[PARAMETERS] section MUST be existed in *.ini file.")
if self.plt_subbsnid < 0:
raise ValueError("PLOT_SUBBASINID must be greater or equal than 0.")
if plt_vars_str != '':
self.plt_vars = StringClass.split_string(plt_vars_str)
else:
raise ValueError("PLOT_VARIABLES illegal defined in [PARAMETERS]!")
# 4. Optional_Parameters
if 'OPTIONAL_PARAMETERS' in cf.sections():
tstart = cf.get('OPTIONAL_PARAMETERS', 'time_start')
tend = cf.get('OPTIONAL_PARAMETERS', 'time_end')
else:
raise ValueError("[OPTIONAL_PARAMETERS] section MUST be existed in *.ini file.")
try:
# UTCTIME
self.time_start = StringClass.get_datetime(tstart)
self.time_end = StringClass.get_datetime(tend)
if cf.has_option('OPTIONAL_PARAMETERS', 'vali_time_start') and \
cf.has_option('OPTIONAL_PARAMETERS', 'vali_time_end'):
tstart = cf.get('OPTIONAL_PARAMETERS', 'vali_time_start')
tend = cf.get('OPTIONAL_PARAMETERS', 'vali_time_end')
self.vali_stime = StringClass.get_datetime(tstart)
self.vali_etime = StringClass.get_datetime(tend)
else:
self.vali_stime = None
self.vali_etime = None
except ValueError:
raise ValueError('The time format MUST be "YYYY-MM-DD" or "YYYY-MM-DD HH:MM:SS".')
if self.time_start >= self.time_end:
raise ValueError("Wrong time setted in [OPTIONAL_PARAMETERS]!")
# 5. Switches
self.lang_cn = False
if 'SWITCH' in cf.sections():
self.lang_cn = cf.getboolean('SWITCH', 'lang_cn')
示例2: __init__
# 需要导入模块: from pygeoc.utils import FileClass [as 别名]
# 或者: from pygeoc.utils.FileClass import is_dir_exists [as 别名]
def __init__(self, cf):
# Default arguments
self.host = '127.0.0.1' # localhost by default
self.port = 27017
self.bin_dir = ''
self.model_dir = ''
self.db_name = ''
self.version = 'OMP'
self.mpi_bin = None
self.hosts_opt = None
self.hostfile = None
self.nprocess = 1
self.nthread = 1
self.lyrmtd = 1
self.scenario_id = 0
self.calibration_id = -1
self.config_dict = dict()
if 'SEIMS_Model' not in cf.sections():
raise ValueError("[SEIMS_Model] section MUST be existed in *.ini file.")
self.host = cf.get('SEIMS_Model', 'hostname')
self.port = cf.getint('SEIMS_Model', 'port')
if not StringClass.is_valid_ip_addr(self.host):
raise ValueError('HOSTNAME defined in [SEIMS_Model] is illegal!')
self.bin_dir = cf.get('SEIMS_Model', 'bin_dir')
self.model_dir = cf.get('SEIMS_Model', 'model_dir')
if not (FileClass.is_dir_exists(self.model_dir)
and FileClass.is_dir_exists(self.bin_dir)):
raise IOError('Please Check Directories defined in [SEIMS_Model]. '
'BIN_DIR and MODEL_DIR are required!')
self.db_name = os.path.split(self.model_dir)[1]
if cf.has_option('SEIMS_Model', 'version'):
self.version = cf.get('SEIMS_Model', 'version')
if cf.has_option('SEIMS_Model', 'mpi_bin'): # full path of the executable MPI program
self.mpi_bin = cf.get('SEIMS_Model', 'mpi_bin')
if cf.has_option('SEIMS_Model', 'hostopt'):
self.hosts_opt = cf.get('SEIMS_Model', 'hostopt')
if cf.has_option('SEIMS_Model', 'hostfile'):
self.hostfile = cf.get('SEIMS_Model', 'hostfile')
if cf.has_option('SEIMS_Model', 'processnum'):
self.nprocess = cf.getint('SEIMS_Model', 'processnum')
if cf.has_option('SEIMS_Model', 'threadsnum'):
self.nthread = cf.getint('SEIMS_Model', 'threadsnum')
if cf.has_option('SEIMS_Model', 'layeringmethod'):
self.lyrmtd = cf.getint('SEIMS_Model', 'layeringmethod')
if cf.has_option('SEIMS_Model', 'scenarioid'):
self.scenario_id = cf.getint('SEIMS_Model', 'scenarioid')
if cf.has_option('SEIMS_Model', 'calibrationid'):
self.calibration_id = cf.getint('SEIMS_Model', 'calibrationid')
if not (cf.has_option('SEIMS_Model', 'sim_time_start') and
cf.has_option('SEIMS_Model', 'sim_time_end')):
raise ValueError("Start and end time MUST be specified in [SEIMS_Model].")
try:
# UTCTIME
tstart = cf.get('SEIMS_Model', 'sim_time_start')
tend = cf.get('SEIMS_Model', 'sim_time_end')
self.time_start = StringClass.get_datetime(tstart)
self.time_end = StringClass.get_datetime(tend)
except ValueError:
raise ValueError('The time format MUST be "YYYY-MM-DD HH:MM:SS".')
if self.time_start >= self.time_end:
raise ValueError("Wrong time settings in [SEIMS_Model]!")
# Running time counted by time.time() of Python, in case of failed of GetTimespan()
self.runtime = 0.