【python代码技巧1】文件查找&数组变维

来源:互联网 发布:淘宝店卖家要什么软件 编辑:程序博客网 时间:2024/06/07 11:56

工欲善其事,必先利其器

1. 遍历目录,根据正则匹配

glob

for subject_folder in glob.glob(os.path.join('/home/cv', '*', '*')):    if os.path.isdir(subject_folder):        # do something        pass

当需要寻找某个目录下的文件(多层目录),尤其好用。

2. 增一维,降一维

在处理多维数组中,总会出现各种匹配shape的情况,比如[3] -> [3,1],[256,256]->[1,1,256,256],除了增加,还有反过来的情况。

a = np.zeros(shape=(3))a[:, np.newaxis].shape # (3,1)b = np.zeros(shape=(256,256))b[np.newaxis, np.newaxis].shape # (1,1,256,256)
aa = np.squeeze(a) # aa.shape = (3)b2 = np.squeeze(b) # b2.shape = (256, 256)b3 = np.squeeze(b, axis=0) # b3.shape=(1,256,256), 消灭第一维(only for dim whose size=1)