0
我在網絡交換機上運行的腳本:海峽對象不可調用的腳本
import exsh
def main():
#result='0'
#print result
result=exsh.clicmd('show ver', capture=True)
print result
result=exsh.clicmd('sh switch', capture=True)
print result
result=exsh.clicmd('sh vlan', capture=True)
print result
exsh.clicmd('create vlan vlan10 tag 10')
result=exsh.clicmd('sh vlan10', capture=True)
print result
exsh.clicmd=('del vlan10')
result=exsh.clicmd('sh vlan', capture=True)
print result
if True: main()
當我運行它,我得到預期的輸出,直到它到達第18行:
Traceback (most recent call last):
File "/config/test.py", line 23, in <module>
if True: main()
File "/config/test.py", line 18, in main
result=exsh.clicmd('sh vlan', capture=True)
TypeError: 'str' object is not callable
什麼變得更讓人意想不到的是,如果我再次隨即錯誤現在出現在8號線運行:
* X460-24p.2 # run script test.py
Traceback (most recent call last):
File "/config/test.py", line 23, in <module>
if True: main()
File "/config/test.py", line 8, in main
result=exsh.clicmd('show ver', capture=True)
TypeError: 'str' object is not callable
不河畔e如何追蹤問題。
經典......他們也許應該改變異常消息,以類似「你確定你只是沒」分配'str'來調用?' – user3012759 2015-03-31 15:22:12
@ user3012759 ....這個異常消息不是正確的嗎? – miradulo 2015-03-31 15:26:40
@ user3012759,如果您查看錯誤,它會向您顯示導致錯誤的對象,並以公平的方式告訴您爲什麼,它很明確。 – 2015-03-31 15:49:37