在loadtxt中阻止或关闭“空文件”警告

时间:2013-10-03 19:24:57

标签: python numpy

我的代码经过一系列文件,使用以下命令将它们读入列表:

data = np.loadtxt(myfile, unpack=True)

其中一些文件是空的(我无法控制),当发生这种情况时,我会在屏幕上显示此警告:

/usr/local/lib/python2.7/dist-packages/numpy/lib/npyio.py:795: UserWarning: loadtxt: Empty input file: "/path_to_file/file.dat"
  warnings.warn('loadtxt: Empty input file: "%s"' % fname)

如何阻止显示此警告?

2 个答案:

答案 0 :(得分:14)

您必须使用catch_warnings包裹该行,然后调用simplefilter方法来禁止这些警告。例如:

    with warnings.catch_warnings():
      warnings.simplefilter("ignore")
      data = np.loadtxt(myfile, unpack=True)

应该这样做。

答案 1 :(得分:1)

一个明显的可能性是预先检查文件:

if os.fstat(myfile.fileno()).st_size:
    data = np.loadtxt(myfile, unpack=True)
else:
    # whatever you want to do for empty files