gpt4 book ai didi

python - 如何从 python 命令行接收正则表达式

转载 作者:行者123 更新时间:2023-11-28 16:46:58 25 4
gpt4 key购买 nike

我想从命令行接收一个像'\t'(制表符)这样的分隔符,并用它来解析文本文件。

如果我放

delimiter = sys.argv[1]

在代码中,从命令行输入

$ python mycode.py "\t"

分隔符是 '\\t' 即,python 会按原样保留输入字符串。

我想将其转换为 '\t' 以便我可以使用,例如,

'a\tb\tc'.split(delimiter)

获取['a','b','c']

我尝试将“\”转换为“\”,但失败了。

是否有内置的 python 函数可以从命令行处理正则表达式?

最佳答案

在 Python 2 中,您可以使用 str.decode('string_escape'):

>>> '\\t'.decode('string_escape')
'\t'

在 Python 3 中,您必须先将字符串编码为字节,然后使用 unicode_escape:

>>> '\\t'.encode().decode('unicode_escape')
'\t'

这两种解决方案都接受任何转义序列并将正确解码它们,因此您甚至可以使用一些奇特的 unicode 东西:

>>> '\\t\\n\\u2665'.encode().decode('unicode_escape')
'\t\n♥'

关于python - 如何从 python 命令行接收正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12989224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com