我尝试在Python中处理.cbf(晶体学二进制格式,请参阅下面的链接)文件。我需要一种方法来循环当前目录中的所有文件。在
例1
# Reading in first file in FabIO.
dat = raw_input('Please Input Required Filename: ') # Define the required filename as a string.
# Example Input: file.cbf
import fabio # Import FabIO module for Python.
img_0001 = fabio.open(dat) # Open image from defined filename.
这段代码,设计用来打开和显示一个文件,效果很好。FabIO有一种打开下一个可用文件的方法,在这种情况下,该文件的格式为:
例2
^{pr2}$因为我已经在示例1中定义了img_0001,所以这段代码可以工作。在
我如何循环当前目录中的所有文件,而不需要对每个文件执行示例2中的命令?如果有100个文件,它会是某种形式的文件:
例3
for i in range (1, 99)
img_'i+1' = img_000'i'.next()
我怎么做这个循环,同时还要计算前导零?在
任何帮助都将不胜感激,谢谢!在
相关信息
CBF文件:http://www.esrf.eu/computing/Forum/imgCIF/cbf_definition.html
如果您正在寻找执行动态生成的代码的方法,请使用exec语句。因此您的
for
循环可以重写为:但是,您可以通过使用^{} 简化表达式的lhs(左侧),并且IMHO将图像存储在列表中可以简化它们以后的访问:
^{pr2}$相关问题 更多 >
编程相关推荐