python - 是否有一个 python 标准函数可以将字符串解析为 argv 列表,就像 Python 中的 bash 一样?

标签 python string-parsing

考虑以下字符串:

./kmux.py  -r 'messenger.* xx'

如果kmux.py是一个Python脚本,并且上面的字符串作为参数传递给bash,那么sys.argv将是以下列表:

["./kmux.py", "-r", "messenger.* xx"]

是否有一个标准的Python函数可以获取第一个字符串并将其转换为数组?

我可以在Python中手动复制bash的逻辑来获取原始字符串并将其转换为这个数组,但我很好奇这样的函数是否已经存在。

最佳答案

使用默认的 shlex封装如下:

import shlex
shlex.split("'./kmux.py  -r 'messenger.* xx'")

关于python - 是否有一个 python 标准函数可以将字符串解析为 argv 列表,就像 Python 中的 bash 一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65367555/

相关文章:

python - 在 Windows shell 脚本 (cmd.exe) 中,如何将程序的标准输出分配给环境变量?

python - 解析生成的网页 Python Selenium

powershell - 格式表的标记字符串

将输入字符串转换为 IP 地址格式

python - 为什么 csv.reader 不是 pythonic?

python - 不将 **kwargs 从自定义 View /表单传递给 django-import-export 资源

python - Pandas 多级索引弄乱了类型?

javascript - 如何将字符串解析为 "header object"?

perl - 是否有将 c99 十六进制浮点符号转换为常规符号的 Perl 模块?

javascript - 在 JavaScript 中,如何从字符串中提取纬度和经度