1
我想從一個fast5文件寫入數據到一個txt文件。我可以通過進入其中的文件的目錄,並使用此代碼這樣做:h5py無法讀取fast5文件
for filename in os.listdir(os.getcwd()):
if filename.endswith('.fast5'):
with h5py.File(filename, 'r') as hdf:
with open(new_txt, 'a') as myfile:
myfile.write('%s \t' % (filename))
不過,我現在正試圖通過主目錄訪問文件,通過特定的子文件夾循環,其中文件位於和訪問文件的方式,通過使用此代碼:
for root, dirs, files in os.walk(path):
for d in dirs:
if d.startswith('pass') or d.startswith('fail')
for rootfolder, blankdirs, fast5files in os.walk(d):
for filename in fast5files:
if filename.endswith('.fast5'):
with h5py.File(filename, 'r') as hdf:
with open(new_txt, 'a') as myfile:
myfile.write('%s \t' % (filename))
此代碼提供了錯誤:
IOError: Unable to open file (Unable to open file: name = 'minion2_chip61_re_n90_yt2_2644_1_ch108_file0_strand.fast5', errno = 2, error message = 'no such file or directory', flags = 0, o_flags = 0)
其迷惑我,因爲它是能夠得到filen ame,但不知何故無法讀取它,它可以在原始代碼下進行讀取。錯誤發生在這條線上:
with h5py.File(filename, 'r') as hdf:
爲什麼h5py無法以這種方式打開/讀取文件?
哈哈我理解了它之前我看了你的答案。你的比我的方法更清潔,謝謝! – j2120
SOreadytohelp!很高興你自己發現了這個問題。 –