0

在父目录 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;输出 = A0.8B0.6C0.9.out;a = 0.8; b = 0.6 和 c = 0.9 然后形成 GULP 列表: GULP = ['gulp < ' + inp + ' > ' + outp]

注意我想补充一点,我假设它不仅仅是一个变量,而是一个单项列表。

为了弄清楚目录中是否有任何文件尚未运行,我需要执行以下操作[这是原始帖子]:

c不等于1.00时,扩展列表GULP以包含gulp < ' + AaBbCc.dat + ' > ' + AaBbCc.out。这必须总是发生,除了 whena == 0.3 and b == 0.2和 whena == 0.8 and c == 0.6

这真的有任何逻辑意义吗?

如果是这样,我该如何在 python 3 中实现这样的一段代码:我知道我将需要一个 if 循环作为第一位,但不确定如何构建异常。

我找到了关于“除外”的文献,但这似乎更适合“试验和改进”方法,以及捕捉程序中发生的错误。我还有可能实现 except 功能吗?

4

1 回答 1

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
于 2013-11-08T18:13:27.530 回答