2016-12-18 19 views
0

プロジェクトの場合は、Webサイトから情報を取得する必要があります。私はその部分を孤立して扱うクラスを作成したかったのです。文字列に変換されたクラスプロパティオブジェクト

は今、私は、要求モデルを通じてHTMLの内容を取得し、これを使用しています:

def get_line(self): 
     for line in self.r.iter_lines(): 
       self.i = self.i+1 
       if self.i == self.zeile: 
        return str(line) 
       elif self.i > self.zeile: 
        break 

機能をHTMLの特定の行を取得します。今私は、変数の行の内容を保存したかった、とこれを使用:

temp_string = property(get_line) 

問題は、私はプロパティオブジェクトではない文字列を持っているということになりましたが、さらに私が欲しいこのHTMLの内容を削減します.findメソッドを使用して、文字列を切り取る場所を動的に開始点と終了点として取得します。

<property object at 0x0000020208A5D818> 

私が間違っているの何を:私は文字列にプロパティを変換する場合は、しかし、それはこの中に(それがコンソールに印刷するときに完全に前に示された)HTMLを変更

+1

だから、なぜあなたは 'property'を呼び出しましたか? – jonrsharpe

+0

さて、プロパティを作成しました。プロパティは、インスタンス*のプロパティ*にアクセスしようとすると、基礎となる関数を呼び出すオブジェクトです。あなたは何をすると思いましたか? –

+0

よく私は、gettersとクラスターのsetterとの結びつきでウェブサイトで使用されるプロパティを見たので、クラス内で変数を動的に作成できると思ったので、インスタンス化すると、methodCallingなしでresult属性にアクセスすればよい。基本的にすべての作業ビットをブラックボックスに入れて、結果だけを気にします。 – Nazzaroth

答えて

0

これは、プロパティが何であるか、どのように使用するかではありません。

get_lineはすでに文字列を返します。結果が必要な場合は、インスタンス上で呼び出します。

line = my_instance.get_line() 
+0

私の目標は、インスタンス化する前に変数の行を計算することでした。そのため、すべてがオブジェクトの内部に保持され、クラスを一度インスタンス化し、既に結果を得ました。 – Nazzaroth

+0

コメントを編集する方法がわからないので、別のコメントを使用する必要があります。問題は、クラスとオブジェクトがそれを行うための最善の方法か、より単純な方法ですか?それともその中のすべてのコンピューティングを行うアクションオブジェクトのようなものが必要なのでしょうか? – Nazzaroth

+0

しかし、どうしたらうまくいくのでしょうか?あなたのロジックはインスタンスの値に依存するので、インスタンスを作成する前にそれをどのように計算できますか? –

関連する問題