PY2 と PY3 の両方で unicode を使用して Argparse を作成しようとしていif six.PY2:
ますsys.version_info.major
。__futute__
io 操作または即時文字列リテラルに Unicode を使用する場合、これらの問題を解決するには io/codec または imports from を使用する必要があることを私は知っています。ただし、argparse の最適なアプローチが何であるかはわかりません。現在、私はこのコードを使用しています:
parser = argparse.ArgumentParser()
argv_enc = sys.getfilesystemencoding()
parser.add_argument('url', type=lambda s: bytearray(s,argv_enc).decode(argv_enc))
bytearray は ASCII をデコードしようとしており、この手順はまったく必要ないため、間違っていると思います。s
代わりに、まだデコードされていない場合にのみデコードしたいと思います。前もって感謝します。