Jupyter .ipynb文件在使用nbformat包读取时改变字符串格式

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

我这里有一个超级奇怪的东西,这是一个.ipynb中的单元内容。

date = "2018-03-23"
day = "'{}'".format(date)

我在格式化它,因为我想把日期字符串用单引号括起来,但当我尝试用 "我的 "来读取这个.ipynb文件时,我发现它是一个很好的文件。

def read_ipynb_file(file_path):
    with open(file_path) as file:
        out = str(nbformat.read(file_path, as_version=4))
    return out
path = 'EDA.ipynb'
out = read_ipynb_file(path)

该出包含

{
        'cell_type': 'code',
        'execution_count': 50,
        'metadata': {},
        'outputs': [],
        'source': 'day = \'2018-03-23\''
}

我如何防止这些反斜杠,因为我必须用下面的regex来验证这个东西。

range_day =  re.findall(r'day\s*=\s* \'\d*[-,]?\d*[-,]?\d*\'', out)[0].replace(' ', '').replace("'", "")

而且由于这些反斜杠的原因,它还会出现错误。

IndexError: list index out of range

我试过一些东西,比如把它变成一个原始字符串,转义单引号,但它还是会把这些反斜杠加进去。

python python-3.x regex string jupyter-notebook
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.