私は、テキストファイルを実行して単語をリストにスライスしてクラスインスタンスを作成していますが、私は分割点として空白を使用しています。オブジェクトが作成されたとは限りませんが、オブジェクトにアクセスできませんか?
このコードを使用して、配列の名前に基づいてクラスのオブジェクトを作成します。
初期化時にオブジェクトが印刷されるため、オブジェクトが作成されていることがわかります。
blue.getWordName()
NameError: global name 'blue' is not defined
私は本当に混乱していますと回答を検索を試してみましたが、私は正しい用語を使用していますかわからない:
私の問題は、私は私が得るこれらのオブジェクトにアクセスしようということです。
私は目標を達成するために辞書を使うことができると考えましたが、実際にはクラスインスタンスをもっと理解したいと思っています。
リストアイテムからオンザフライでクラスを作成することに法律はありますか?
私は、コードのすべてを含めるようにしようとしましたが、それは私が私が私が最も関連性の高いと思われるものが含まだろうことはできないだろう:
class Word():
def __init__(self, name):
print 'You have just created me and I\'m called ' + name
self.name = name
if count > 0 and wordArray[count - 1] == 'is':
title = wordArray[count]
if title not in checkKeyWords():
exec("%s = Word(title)" % (title)) #set class from list item.
if word in verbArray:
exec("%s.setWordType('verb')" % (title))
は最終的に私が作成した以下の関数を呼び出すと、正確に綴られていますが、私はまた、 '青'が間違いなくリストに入っていることを確認しました。
blue.getWordName()
"リスト項目からその場でクラスを作成することに違反する法律はありますか?" - いいえ、生命を脅かす状況を除いて、「exec」の使用に関する法律が存在する必要があります。クラスとインスタンスについて知りたければ、 'exec'の使用を控えてください。そうしないと、代わりにそのクォークを学習するだけです。 –