循环一堆H5文件并创建一个新的lis

2024-10-05 14:26:57 发布

您现在位置:Python中文网/ 问答频道 /正文

import os

import h5py

os.chdir('C:\Users\dew')

file_names = ['3DSND_12MAY2016_0000_L1B_SA1.h5', '3DSND_12MAY2016_0100_L1B_SA1.h5', '3DSND_12MAY2016_0200_L1B_SA1.h5', '3DSND_12MAY2016_0300_L1B_SA1.h5', '3DSND_12MAY2016_0500_L1B_SA1.h5', 
            '3DSND_12MAY2016_0600_L1B_SA1.h5', '3DSND_12MAY2016_0600_L1B_SA1.h5', '3DSND_12MAY2016_0700_L1B_SA1.h5', '3DSND_12MAY2016_0800_L1B_SA1.h5',
             '3DSND_12MAY2016_0900_L1B_SA1.h5', '3DSND_12MAY2016_1000_L1B_SA1.h5', '3DSND_12MAY2016_1200_L1B_SA1.h5', '3DSND_12MAY2016_1300_L1B_SA1.h5', 
            '3DSND_12MAY2016_1400_L1B_SA1.h5', '3DSND_12MAY2016_1500_L1B_SA1.h5', '3DSND_12MAY2016_1700_L1B_SA1.h5', '3DSND_12MAY2016_1900_L1B_SA1.h5', 
            '3DSND_12MAY2016_2000_L1B_SA1.h5', '3DSND_12MAY2016_2100_L1B_SA1.h5', '3DSND_12MAY2016_2200_L1B_SA1.h5']

new = list()

new = list()

for file_name in file_names:
    print file_name
    new = (h5py.File(file_name, 'r'))
    print new

运行此命令时,得到以下输出:

^{pr2}$

我这样做是为了把一堆H5文件一起读,然后把它们分配到另一个列表中。不幸的是,当我运行新列表时,它只显示其中包含的一个文件。在

但在单独调用新列表时,只返回单个h5文件。在

新的

#输出


Tags: 文件nameimport列表newnamesoslist
1条回答
网友
1楼 · 发布于 2024-10-05 14:26:57

我不知道我是否理解你的问题。 如果你只想复制另一个新列表中的名字,这就是它的工作原理

new = []
for file_name in file_names:
    new.append(file_name)

您可以在以下列表中找到有用的文档: https://docs.python.org/2/tutorial/datastructures.html

还是要读取HDF5文件的内容并将其添加到一个HDF5文件中?然后一个小信息什么是在HDF5文件和你想要的结果将是需要的。 基本上你必须读取你的一堆HDF5文件中的每个数据集,并将它们添加到另一个文件中。 还是要从HDF5文件中读取一个或多个数据集并将其添加到列表中?在本例中,每个h5文件都有一个名为“a”的数据集。在

^{pr2}$

相关问题 更多 >