2

有谁知道可以处理 MSVC nan 数字(1.#QNAN)的 python 字符串到浮点解析器?目前我只是在使用float(str)它至少可以处理“nan”。

我正在使用 python 脚本来读取 C++ 程序(在 linux/mac/win 平台下运行)的输出,并且在读取这些值时脚本会弹出。(我确实已经找到了一个 C++ 库来跨平台一致地输出值,但有时必须比较过去的结果,所以这仍然偶尔会弹出。)

4

1 回答 1

2

由于您必须处理遗留的输出文件,我认为除了编写一个 robust_float函数之外别无他法:

def robust_float(s):
    try:
        return float(s)
    except ValueError:
        if 'nan' in s.lower():
            return float('nan')
        else:
            raise
于 2010-06-04T13:17:03.757 回答