如何拆分包含命令行参数的字符串

ano*_*ous 1 python

如何将字符串拆分-s -k "test_a or test_b" -m "not unstable" --results=/tmp/test-results --log-cli-level=INFO

['-s', '-k', 'test_a or test_b', '-m', 'not unstable', '--results=/tmp/test-results', '--log-cli-level=INFO']
Run Code Online (Sandbox Code Playgroud)

Ben*_*Ben 5

我假设您错过了添加报价。如果您想以类似 shell 的行为进行拆分,请使用shlex

import shlex

s = '-s -k "test_a or test_b" -m "not unstable" --results=/tmp/test-results --log-cli-level=INFO'
print(shlex.split(s))
# ['-s', '-k', 'test_a or test_b', '-m', 'not unstable', '--results=/tmp/test-results', '--log-cli-level=INFO']
Run Code Online (Sandbox Code Playgroud)