嗨,大家好, 我的目录中有13个.npy文件。其中一些以相同的名称开头。 示例:
B59_180322_153253.npy
B59_180322_173253.npy
B60_180324_153253.npy
B60_180324_173253.npy
B61_180324_173253.npy
B62_180324_173253.npy .... ....
我需要阅读它们并在for循环中连接以相同名称(B59)开头的那些,然后将其分配给字典数据。但是我找不到自动的方法。 你有什么建议吗? >
data = {'B59':[], 'B62':[],
'B65':[], 'B67':[], 'B68':[], 'B79':[], 'B80':[]}
当没有多个以相同名称开头的文件时,该代码可以很好地工作。任何人将不胜感激,在此先感谢。 最好
对于glob.glob(“ *。npy”)中的文件:
experiment_id=file.split('_')[0] print(experiment_id) var = np.load(file) data[experiment_id]=var
答案 0 :(得分:0)
非常感谢您。
使用以下代码,我可以使用具有文件名的键来创建字典。所以我自己没有写。 但是,当有2个以相同名称开头的npy文件时,词典仍然仅获得第一个npy文件。
这个没有用,所以我将其删除, 数据[experiment_id] .append(var)
direc = os.getcwd() # Get current working directory
text = '.npy' # Select your file delimiter
file_dict = {} # Create an empty dict
# Select only files with the ext extension
txt_files = [i for i in os.listdir(direc) if os.path.splitext(i)[1] == ext]
for f in txt_files:
with open(os.path.join(direc,f)) as file_object:
experiment_id=f.split('_')[0]
print(experiment_id)
file_dict[experiment_id]=np.load(f)
您认为可以在此处添加什么?