在python中发送值中带有符号和字符的参数时出错?

在python中发送值中带有符号和字符的参数时出错?,python,arguments,centos,ampersand,Python,Arguments,Centos,Ampersand,我用python处理两个脚本。第一个脚本需要向第二个脚本发送值或参数。现在的问题是,每当我向第二个脚本发送值时,第二个脚本都无法获取我发送的所有参数。Im发送的值是一个URL,它包含一个符号和。我注意到它不断地将价值削减到& 例如,我需要通过以下考试: 第二个脚本将只接收以下内容: 我需要做什么才能捕捉到正确的值?还有哪些字符与此有相同的问题?您需要在整个值周围加引号,包括符号And,因为它是一个特殊的shell字符。或者,您可以在符号前面加一个反斜杠,以避开符号AND: http://ww

我用python处理两个脚本。第一个脚本需要向第二个脚本发送值或参数。现在的问题是,每当我向第二个脚本发送值时,第二个脚本都无法获取我发送的所有参数。Im发送的值是一个URL,它包含一个符号和。我注意到它不断地将价值削减到&

例如,我需要通过以下考试:

第二个脚本将只接收以下内容:


我需要做什么才能捕捉到正确的值?还有哪些字符与此有相同的问题?

您需要在整个值周围加引号,包括符号And,因为它是一个特殊的shell字符。或者,您可以在符号前面加一个反斜杠,以避开符号AND:

http://www.google.com/jfljflfjej\&12345
在后台模式下,该符号向要将命令放置到该点的shell发出信号

以下任一字符为:

“`<>|()[]?\$^&*=
这些需要以同样的方式转义;使用反斜杠或在值周围加引号。

回答您可能有点晚,但我遇到了同样的问题,我找到了一个简单的解决方案

您可以使用函数replace()将每个符号替换为HTML“%26”中的代码,如下所示

url = http://www.google.com/jfljflfjej&12345
print url.replace('&', '%26')
结果是:

http://www.google.com/jfljflfjej%2612345

这是一个编码问题。

您的script1如何调用script2?
http://www.google.com/jfljflfjej%2612345