#!/usr/bin/python3 class Command: def __init__(self, command): self.result = [ command ] pass def __iter__(self): return iter(self.result) def arg(self, arg): self.result.append(arg) return self def flag(self, flag, condition=True): condition and self.result.append(flag) return self def option(self, name, value=None, kind=str): isinstance(value, kind) and self.result.extend([name, str(value)]) return self