在父目录O中,我有一系列目录Aa,其中a在0-1之间变化。在每一个中我都有一系列目录Bb,其中b在0-1之间变化。在这些中,每个都有输入/输出文件AaBbCc.dat和AaBbCc.out用于某些计算[c也从0-1变化]。但是,由于资源量的限制,我可以使用其中一些计算未能完成(甚至运行)。
我创建了一个文件'walltime.txt',其中列出了在计算完成之前已关闭的输出文件[AaBbCc.out]。从这里开始,变量a,b和c取值。
我正在尝试编写一个程序,该程序总体上记录了尚未完成的文件的名称,计算出那些尚未运行的程序的名称,并将所有这些名称写入批处理文件中。
即。
文件名A0.8B0.6C0.9.out出现在'walltime.txt'中
因此:inp = A0.8B0.6C0.9.dat; outp = A0.8B0.6C0.9.out; a = 0.8; b = 0.6,c = 0.9
然后形成GULP列表:GULP = ['gulp< '+ inp +'> '+ outp]
N.B。我想补充一点,我假设它不仅仅是一个变量,而是一个项目列表。
为了解决目录中是否有任何未运行的文件,我需要执行以下操作[这是原始帖子]:
当c
不等于1.00
时,请将列表GULP
扩展为包含gulp < ' + AaBbCc.dat + ' > ' + AaBbCc.out
。这必须始终发生,除非a == 0.3 and b == 0.2
和a == 0.8 and c == 0.6
时。
这实际上是否具有逻辑意义?
如果是这样,我如何在python 3中实现这样一段代码:我知道第一位需要一个if循环,但我不确定如何构建异常。
我发现了关于'除外'的文献,但这似乎更适合于'试用和改进'方法,以及捕捉程序中出现的错误。我仍然可以实现except函数吗?
答案 0 :(得分:1)
伪代码:
for each set of (a b c) values:
if ( c != cantalope ):
if ( a==apple and b==banana ) or ( a==avacado and c==cherry ):
continue
add (a b c.Letter) to shopping