[英]Python - Retrieving values from methods within other classes
我正在嘗試自學Python,並創建了一個文件,該文件貫穿各個類的各種問題集。 在此文件的末尾,我想總結所有原始輸入。
不幸的是,我正在努力從單獨的類中訪問這些值。 我將代碼分解為一個測試示例,以演示程序的結構:
class QuestionSet(object):
next_set = 'first_set'
class ClaimEngine(QuestionSet):
def current_set(self):
last_set = "blank"
while_count = int(0)
quizset = Sets.subsets
ParentSet = QuestionSet()
while ParentSet.next_set != last_set and int(while_count)<50:
quizset[ParentSet.next_set].questioning()
while_count = while_count+1
class FirstSet(QuestionSet):
def questioning(self):
value1 = raw_input("Val1")
QuestionSet.next_set = "second_set"
class SecondSet(QuestionSet):
def questioning(self):
value2 = raw_input("Val2")
QuestionSet.next_set = "summary"
class Summary(QuestionSet):
print "test"
## I need to print a summary of my inputs here ##
## e.g. Print "The answer to value1 was:%r" %value1##
class Sets(object):
subsets = {
'first_set': FirstSet(),
'second_set': SecondSet(),
'summary': Summary()
}
我嘗試在摘要中定義每個類,例如1stSet = FirstSet(),然后定義FirstSet.value1等,但無濟於事。
如果有人對如何獲取這些值有任何建議,那將是很棒的,因為我編寫了一個充滿問題的大型程序,並且陷入了最后的障礙!
謝謝。
您在類的每個函數中擁有的值不會創建為類成員。 對於您的應用程序,您需要創建成員變量,這些成員變量將值存儲在類中。
例如:
class FirstSet(QuestionSet):
def questioning(self):
self.value1 = raw_input("Val1")
QuestionSet.next_set = "second_set"
現在,value1是一個成員變量,您可以訪問它。
在上面的示例中,可能很像下面這樣的行,用於從“ first_set”訪問value1
subsets['first_set'].value1
如果您對此不熟悉,請嘗試本教程
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.