文字列の有効性を検証して、端末に渡すことができる正当なコマンドであることを確認しようとしています。文字列がテストに合格した場合、True を返します。それ以外の場合は、False とエラー メッセージを返します。
私のコードはネストされた多数の if ステートメントでかなり醜いです - どうすれば改善できますか?
task = task.split()
if len(task) > 1:
if task[0] == 'svn':
if task[1] in ALLOWED:
if len(task[2:]) == ALLOWED[task[1]]:
return True, task, None
else:
return False, "Incorrect number of arguments."
else:
return False, "Not a legal command."
else:
return False, "Not a subversion command."
else:
return False, "Invalid input"