作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想从目录中获取一种类型(.npy)的所有文件,并将它们转换为命名变量,使用 numpy 中的 np.load 调用 .npy 文件中的数据。
我已经使用 glob 创建了一种类型的文件列表,但是我似乎找到了一种很好的方法来继续。
os.chdir("/Users/Directory/")
dir_path = os.getcwd()
file_names = sorted(glob.glob('*.npy'))
file_names = file_names[:]
for f in file_names:
print(f)
EELS 10nmIF 16nm.npy
EELS 4nmIF 16nm.npy
EELS Background.npy
我想要的输出是一组具有以下名称的变量:
EELS 10nmIF 16nm
EELS 4nmIF 16nm
EELS Background
每个变量都会使用 np.load 调用 .npy 文件中的数据,本质上它看起来像这样:
EELS 10nmIF 16nm = np.load(dir_path + EELS 10nmIF 16nm.npy)
EELS 4nmIF 16nm = np.load(dir_path + EELS 4nmIF 16nm.npy)
EELS Background = np.load(dir_path + EELS Background.npy)
最佳答案
您可以使用 list comprehension创建一个新的修剪文件名列表。
variables = [f[0:-4] for f in file_names]
然后您可以对此列表的内容执行任何您想要的操作,包括加载每个文件:
for v in variables:
np.load(dir_path + v + '.npy')
或者,跳过上述步骤,直接加载所有文件:
for f in file_names:
np.load(dir_path + f)
不过我可能没有捕获你问题的重点,所以也许 this answer有您需要的。
关于python - 有没有办法在引用原始列表的同时将列表元素转换为自变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55751348/
我是一名优秀的程序员,十分优秀!