これが以前に尋ねられた場合はお詫びします。私はそれを検索しましたが、すべてのヒットは argparse に関するものではなく、一般的な Python の生の文字列に関するもののようです。
とにかく、ユーザーが文字列を入力し、この文字列が処理されるコードがあります。\n
ただし、コードでとを区別できるように\\n
して、ユーザーが改行を取得するか\n
出力に表示するかを (それぞれ) 制御できるようにするため、問題があります。
これ自体は非常に単純で、文字列などをチェックするロジックを動作させることができます。ただし、argparse は入力文字列をそのまま保持していないようです。したがって、次のように書くHere is a list:\nItem 1
と、 として解析されHere is a list:\\nItem 1
ます。\n
入力文字列を に置き換えるとまったく同じものが解析されるため\\n
、両者を区別できなくなります。
ボッジを含めることもできます (たとえば、出力に表示するため、または改行のためだけに$\n
ユーザーに入力させることができます)。しかし、これは面倒で、コードの使用を複雑にします。\n
\n
argparse によって解析される文字列が生であることを確認する方法はありますか? (つまり、入力する\n
と解析されますが、解析\n
されません\\n
)
繰り返しますが、これが以前に尋ねられた場合は申し訳ありませんが、答えを見つけることができませんでした.1時間以上答えを見つけようとした後、私はアイデアがありません. ありとあらゆる助けを事前に乾杯してください。
サンプル コード (これが機能しない場合は申し訳ありません。argparse のサンプル コードを実行する最善の方法がわかりません!):
import argparse
parser = argparse.ArgumentParser( description = 'Test.' )
parser.add_argument( 'text', action = 'store', type = str, help = 'The text to parse.' )
args = parser.parse_args( )
print( repr( args.text ) )