小编Ste*_*eve的帖子

Python Argparse:原始字符串输入

抱歉,如果以前曾问过这个问题,我确实进行了搜索,但所有命中似乎都与python raw字符串有关,而不是argparse。

无论如何,我有一个代码,用户输入一个字符串,然后对该字符串进行处理。但是,我有一个问题,因为我希望我的代码能够区分\n和,\\n以便用户可以控制他们是否换行或\n分别出现在输出中。

这本身非常简单,并且我可以使逻辑工作来检查字符串等。但是,argparse似乎并没有保持输入字符串的原始状态。因此,如果我要写:Here is a list:\nItem 1它将解析为Here is a list:\\nItem 1。如果要在输入字符串中替换\n\\n,则会解析出完全相同的事物,因此无法区分两者。

我可以包括bodge(例如,我可以让用户输入发言权$\n\n出现在输出,或者只是\n一个换行符)。但这很麻烦,并使代码的使用复杂化。

有没有办法确保被argparse解析的字符串是原始的?(即,如果我输入\n它解析\n而不是\\n

再次,很抱歉,如果以前曾有人问过这个问题,但是我找不到答案,经过一个多小时的尝试找到答案后,我没主意了(不要再犹豫了)。提前为任何和所有帮助加油。

示例代码(很抱歉,如果这不起作用,请不确定如何最好地为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 ) )
Run Code Online (Sandbox Code Playgroud)

python string rawstring argparse

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

argparse ×1

python ×1

rawstring ×1

string ×1