1
場合、私は、コード使用するクラスは、内部の文
class disable_file_system_redirection:
if mysystem == "Windows":
_disable = ctypes.windll.kernel32.Wow64DisableWow64FsRedirection
_revert = ctypes.windll.kernel32.Wow64RevertWow64FsRedirection
def __enter__(self):
self.old_value = ctypes.c_long()
self.success = self._disable(ctypes.byref(self.old_value))
def __exit__(self, type, value, traceback):
if self.success:
self._revert(self.old_value)
else:
pass
If test == “yes”:
with disable_file_system_redirection:
try:
“some code”
else:
try:
“same code”
のこの種を持っています。エラーを出さずにこれらの2つの同じコードをマージすることはできません。あなたが関数にあなたのコードを外部委託することができ、その
If test = = “yes”:
with disable_file_system_redirection:
else:
pass #without disable_file_system_redirection:
“some code”
場合-else'、あなたは 'てみ-except'を選ぶことができます'の必要はありませんブロック。 –