OSError:找不到文件

时间:2019-07-19 09:56:35

标签: python python-3.x file-not-found

因此,如您所见,如果您搜索我以前的问题,我正在尝试编写一个脚本,该脚本需要重命名(在脚本本身中,而不在文件夹中)一些.txt文件才能使用对其进行循环,枚举它们。

谢谢,您决定使用字典,如下所示:

import os
import fnmatch

dsc = {}

for filename in os.listdir('./texto'):
    if fnmatch.fnmatch(filename, 'dsc_hydra*.txt'):
        dsc[filename[:6]] = filename
        print(dsc)
print(dsc['dsc_hydra1'])

“打印(某物)”只是检查一切是否正常。

正如我在之前的问题中所述,我需要重命名它们,因为我在将来的函数中使用它们,并且我不想使用所有这些路径来解决它们,例如:

IFOV= gi.IFOV_generic(gmatOUTsat1,matrixINPUTsat1,dsc['dsc_hydra1'],'ifovfileMST.json',k_lim, height, width)

使用dsc['dsc_hydra1'],出现此错误:

Traceback (most recent call last):
  File "mainSMART_MST.py", line 429, in <module>
    IFOV1= gi.IFOV_generic(gmatOUTsat1,matrixINPUTsat1,dsc['dsc_hydra1'],'ifovfileMST.jso',k_lim, height, width)
  File "/home/alumno/Escritorio/HDD_Nuevo/HO(PY)/src/generateIFOV.py", line 49, in IFOV_generic
    DCM11,DCM12,DCM13,DCM21,DCM22,DCM23,DCM31,DCM32,DCM33 = np.loadtxt(gmatDCM,unpack=True,skiprows = 2,dtype = float)
  File "/home/alumno/.local/lib/python3.5/site-packages/numpy/lib/npyio.py", line 962, in loadtxt
    fh = np.lib._datasource.open(fname, 'rt', encoding=encoding)
  File "/home/alumno/.local/lib/python3.5/site-packages/numpy/lib/_datasource.py", line 266, in open
    return ds.open(path, mode, encoding=encoding, newline=newline)
  File "/home/alumno/.local/lib/python3.5/site-packages/numpy/lib/_datasource.py", line 624, in open
    raise IOError("%s not found." % path)
OSError: dsc_hydra1.txt not found.

我已经检查了文件夹并且文件在那里,为什么我一直出现此错误?

1 个答案:

答案 0 :(得分:0)

我有同样的问题。就我而言,在file.txt中,字符串的末尾有一个空格。您应该控制空格!例如,在file.txt中(空格=-):

-365-
string1-
string2
-string3

如果删除所有空格(-),它应该可以工作!