擅长:python、mysql、java
<p>这不是有效的python语法。Python将代码解析为:</p>
<pre><code>client.service_ - CTSH_-HC_RFC_XCHG_RATE_UPLOAD()
</code></pre>
<p>即<code>client.service_</code>和该函数调用的减法。你知道吗</p>
<p>您可以尝试改用<code>getattr</code>:</p>
<pre><code>method = getattr(client, "service_-CTSH_-HC_RFC_XCHG_RATE_UPLOAD")
method() # call the method
</code></pre>
<p>假设<code>zeep</code>没有以其他方式“规范化”无效的方法名。你知道吗</p>
<hr/>
<p>工作示例:</p>
<pre><code>>>> class A:
... pass
...
>>> setattr(A, "service_-CTSH_-HC_RFC_XCHG_RATE_UPLOAD", lambda self: print('called'))
>>>
>>> a = A()
>>> getattr(a, "service_-CTSH_-HC_RFC_XCHG_RATE_UPLOAD")()
called
>>> method = getattr(a, "service_-CTSH_-HC_RFC_XCHG_RATE_UPLOAD")
>>> method
<bound method <lambda> of <__main__.A object at 0x7f4651c5e518>>
>>> method()
called
</code></pre>