2017-06-19 4 views
1

EclipseにはJavaの標準ライブラリがあると思います。私はObjectを検索して、Objectクラスのソースを見ることができると信じています。Pycharm:組み込みのデータ構造の宣言に行く方法はありますか?

Pythonでlistのようなもののソースを検索して表示したいと考えています。

Pycharmでは、import osまたはc = ClassFromMyModule()などの宣言に行くことができますが、dictまたはリストでは同じではありません。

リテラルや演算子の宣言には行くことができません。以下のような:

d = {} 
l = ['hello', 'there'] 
my_str = "hello there" 
a = b + c 

答えて

1

あなたは、単にような何か書くことができます。

x = list() 

をして、Ctrlキーを打つとlistをクリックしてください。 builtins.pyというファイルに移動しますが、のリストと辞書は組み込み済みです、これらは通常で、が実装されています。

class list(object): 
    """ 
    list() -> new empty list 
    list(iterable) -> new list initialized from iterable's items 
    """ 
    def append(self, p_object): # real signature unknown; restored from __doc__ 
     """ L.append(object) -> None -- append object to end """ 
     pass 

    def clear(self): # real signature unknown; restored from __doc__ 
     """ L.clear() -> None -- remove all items from L """ 
     pass 
    # ... 

だから、実際にはより多くの文書に基づいて生成された「仮想」クラス定義である:だから結果として、これらは何Python実装を持っていない、それはのようなものは、あなたが表示されます。 listオブジェクトはではなく、Python自体で実装されたです。これはPythonインタープリタで実装されたオブジェクトです。リスト/配列のようなものを持たずにリストを(高速ランダムアクセスで)実装することは不可能なので、これは理にかなっています。

+0

私の通訳が使用している実装は難しいですか? –

+1

@JamesT:これらは通常C/C++で書かれています。これは例えば 'list'オブジェクトです:https://hg.python.org/releasing/3.6/file/tip/Objects/listobject.c –

1
import builtins 

この宣言に移動します。

関連する問題