python logger.info 记录list
时间: 2024-09-26 10:01:07 浏览: 32
在Python中,`logger.info()` 是用于记录日志信息的一个常用方法,通常在logging模块中使用。如果你想要记录一个包含列表的日志,你可以这样做:
```python
import logging
# 初始化日志器
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
# 定义一个handler,用于写入日志文件
fh = logging.FileHandler('example.log')
fh.setLevel(logging.INFO)
# 写入日志的格式
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
# 绑定handler到logger
logger.addHandler(fh)
# 要记录的列表
my_list = [1, 2, 3, 'four', 'five']
# 使用logger.info()记录列表
logger.info("List content: %s", my_list)
```
在这个例子中,`logger.info()` 将会把包含`my_list`内容的日志信息记录下来,并保存在指定的日志文件`example.log`中。
相关问题
train, val, test, s = (data.get(x) for x in ('train', 'val', 'test', 'download')) if val: val = [Path(x).resolve() for x in (val if isinstance(val, list) else [val])] # val path if not all(x.exists() for x in val): LOGGER.info('\nDataset not found ⚠️, missing paths %s' % [str(x) for x in val if not x.exists()]) if not s or not autodownload: raise Exception('Dataset not found ❌') t = time.time() if s.startswith('http') and s.endswith('.zip'): # URL f = Path(s).name # filename LOGGER.info(f'Downloading {s} to {f}...') torch.hub.download_url_to_file(s, f) Path(DATASETS_DIR).mkdir(parents=True, exist_ok=True) # create root unzip_file(f, path=DATASETS_DIR) # unzip Path(f).unlink() # remove zip r = None # success elif s.startswith('bash '): # bash script LOGGER.info(f'Running {s} ...') r = subprocess.run(s, shell=True) else: # python script r = exec(s, {'yaml': data}) # return None dt = f'({round(time.time() - t, 1)}s)' s = f"success ✅ {dt}, saved to {colorstr('bold', DATASETS_DIR)}" if r in (0, None) else f'failure {dt} ❌' LOGGER.info(f'Dataset download {s}') check_font('Arial.ttf' if is_ascii(data['names']) else 'Arial.Unicode.ttf', progress=True) # download fonts return data # dictionary
这段代码是一个函数,它从数据字典中获取训练集、验证集、测试集和下载链接。如果验证集存在,则将其路径解析为绝对路径。如果验证集中有任何一个文件不存在,则会记录日志并抛出异常。如果下载链接存在,并且自动下载标志为真,则会下载数据集并将其解压缩到指定目录中。最后,它会检查是否拥有所需的字体文件,并将数据字典返回。
#missing = tmc1.loc[~tmc1["SMILES"].isin(smi_list), "SMILES"].to_list() smi_list.extend(tmc1_smi) labels.extend([3 for _ in range(len(tmc1_smi))]) logger.info(f"Dataset size with TMC-1: {len(smi_list)}")
这段代码看起来像是Python的一段数据处理代码,其中包含了一些DataFrame的操作,似乎是将tmc1表格中的SMILES列中不在smi_list中的元素提取出来,加入到smi_list中,并且将对应的标签加入到labels列表中。最后使用logger输出了数据集大小。不过缺少上下文,无法确定其具体作用和含义。
阅读全文