YAML 读取跨多个变量存储的文件名

问题描述 投票:0回答:1

我有 YAML 数据,其中包含长期以来数百个实验结果的文件路径。
结果存储在不同的目录中。
所有结果都有相同的基目录。
因此,我想为根目录创建一个公共变量,并在文件路径中使用根目录变量以避免重复。

我的 YAML 数据: 演示.yaml

define: &root '/Users/SAL/Documents/Projects/FORD_CELLS/'  
test1 : *root+'test1/result.csv'
test2 : *root+'test2/result.csv'

我想像这样读取Python中的YAML变量: 在 Python 中阅读:

import yaml
import pandas as pd

exp_info = yaml.safe_load(open('DEMO.yaml'))
exp_info['test2']

当我尝试读取测试结果时,我遇到 ScannerError

ScannerError: while scanning an alias
expected alphabetic or numeric character, but found '+'

我尝试了不同的组合,但没有一个有效。 谁能帮我解决这种情况。

python path yaml markup
1个回答
0
投票

使用Python,您可以使用字符串格式选项。 请看下面的代码

import yaml
import pandas as pd

root = 'path/'
exp_info = yaml.safe_load(open(f'{root}'test2/result.csv'))
print(exp_info['var'])

任何其他字符(例如“+”)都需要位于引号“

”内
© www.soinside.com 2019 - 2024. All rights reserved.