2016-04-09 4 views
2

()でいくつかのメソッドを呼び出す必要がありますが、それ以外のメソッドは呼び出すことができません。 IPythonを使用して、かっこを使用するかどうかなど、どうすれば確認できますか?たとえば、次のファイルscratch.pyPythonでのかっこ付きの呼び出し方法

import numpy as np 

arr = np.random.randn(5) 

print arr.sort, "\n" 
print arr.sort(), "\n"; 
print arr.shape, "\n"; 
print arr.shape(), "\n"; 

は、この出力を生成します

<built-in method sort of numpy.ndarray object at 0x7fb4b5312300> 

None 

(5,) 

Traceback (most recent call last): 
    File "scratch.py", line 8, in <module> 
    print arr.shape(), "\n"; 
TypeError: 'tuple' object is not callable 

答えて

2

これらのメソッドはありませんが、それらはpropertiesあります。 descriptorはPython自体の裏側で呼び出されます。

+0

これらは単に属性であってもかまいません。 – BrenBarn

1

Pythonのメソッドは常に()で呼び出されます。 何かがメソッドであるかどうかを確認する最も良い方法は、ライブラリのドキュメントを読むことです。

関連する問題