YAML 管道无法将具有特殊字符的输入参数解析为 Python 任务

YAML pipeline unable to parse input parameter with special characters to a Python task

如何 escape/handle parentheses/arbitrary 输入特殊字符,例如我在下面显示的字符,以便我的 python 代码获得正确的字符串参数?

我有一个 YAML 管道,它将输入参数作为来自用户的字符串,并将该字符串作为参数提供给 Python 任务:

   - name: Name
     displayName: Username
     type: string
     default: "-"

   - task: PythonScript@0
     displayName: 'Python task'
     inputs:
       scriptPath: $(System.DefaultWorkingDirectory)/x/y.py
       arguments: ' -Name "${{parameters.Name}}" '
       workingDirectory: '$(System.DefaultWorkingDirectory)/x'

此输入参数适用于字母数字字符,但当我输入带有左圆括号和右圆括号的字符串(例如 Foo(Bar))时,Python YAML 任务打印错误:

/bin/sh: 1: Syntax error: "(" unexpected

请注意,上述错误甚至在 Python 脚本执行开始之前就出现在管道日志中

成功输入字符串: FooBar

输入字符串失败: Foo(Bar)

如何处理此问题以便我的 Python 脚本获得正确的字符串?

Python 脚本:

import argparse

parser = argparse.ArgumentParser(description="test")
parser.add_argument("-Name")

args = parser.parse_args()

user_name= args.Name

编辑:更加清晰,并添加了 Python 脚本

我已经解决了这个问题。 我用双引号将我的输入参数括起来,现在我可以接受带有特殊字符的输入字符串。 我从我的 Python 脚本输出管道变量用于下一个任务,但由于特殊字符,我曾经得到这个错误。