2017-10-13 123 views
0

我有以下命令:爲什麼我圖中的number_of_edges方法不起作用?

print g.number_of_edges 

,並得到下面的輸出

<bound method Graph.number_of_edges of <networkx.classes.graph.Graph object at 0x00000000096512E8>> 

是什麼意思輸出?

+2

如果'number_of_edges'是一種方法,那麼您應該執行'print g.number_of_edges()'來實際調用該方法。當我嘗試打印對象本身而不是調用對象並打印其輸出時,通常會遇到此輸出。 –

+0

[9。 Classes](https://docs.python.org/3/tutorial/classes.html)。歡迎來到SO。請花時間閱讀[問]和它包含的鏈接。 – wwii

+0

可能的重複項:https://stackoverflow.com/q/13130574/2823755 – wwii

回答

1

由於g.number_of_edges是一個類方法,並且沒有爲該類定義的打印方法,所以Python只會打印關於該對象的知識(存儲對象的類名和內存位置)。

而不是print g.number_of_edges使用print g.number_of_edges()。區別在於print g.number_of_edges()調用方法number_of_edges,然後打印其返回值。

相關問題