我有以下一段包含if-else语句的代码。当我打印它时,即使执行了if部分,它看起来仍然执行了else部分。我与猫-A运行它,并缩进看起来很好即使在python中执行IF stmt,也执行ELSE stmt
print "PRINT os.fork"
pid = os.fork()
if pid:
print "PRINT IF %d" %pid
os.close(write_fd)
self.pid2file[pid] = read_fd
else:
print "PRINT ELSE"
signal.signal(signal.SIGTERM, signal.SIG_DFL)$
这里是输出:
PRINT os.fork
PRINT IF 63185
PRINT ELSE
顺便说一句,所有的代码都驻留在一个循环中。
我很欣赏这种行为的任何想法...
你可以在那里使用fork()。所以会有两个过程:一个是pid = 0(孩子),另一个是pid =某事(父母)。父母将进入如果分支,孩子是其他人。 – syntonym