読者です 読者をやめる 読者になる 読者になる

コマンドライン引数を無駄にif分岐しない方法

if len(sys.argv) < 2 or sys.argv[1] is None:
  print '-NONE-'
else:
  print sys.argv[1]

これを短くしたい。

try:
  print sys.argv[1]
except:
  print '-NONE-'

ぼちぼち。try/exceptは複数行になるしあんま好きじゃない。

print '-NONE-' if len(sys.argv) < 2 or sys.argv[1] is None else sys.argv[1]

1行になったけど冗長。

argv = sys.argv + [None]
print argv or '-NONE-'

こんなもんか。