我有一個Python的問題。 我想了解哪些是存儲在我發現是一個生成器的對象中的信息。 我對Python一無所知,但我必須瞭解這段代碼如何工作才能將其轉換爲Java。 代碼如下:python嵌套生成器對象內容
def segment(text):
"Return a list of words that is the best segmentation of text."
if not text: return []
candidates = ([first]+segment(rem) for first,rem in splits(text))
return max(candidates, key=Pwords)
def splits(text, L=20):
"Return a list of all possible (first, rem) pairs, len(first)<=L."
pairs = [(text[:i+1], text[i+1:]) for i in range(min(len(text), L))]
return pairs
def Pwords(words):
"The Naive Bayes probability of a sequence of words."
productw = 1
for w in words:
productw = productw * Pw(w)
return productw
,而我的理解是怎麼方法Pwords並分割工作(功能Pw的(W)只要從一個矩陣的值),我還是想知道,如何「候選人「對象,在」細分「方法中構建幷包含它。 以及「max()」函數如何分析此對象。
我希望有人能幫助我,因爲我沒有找到任何可行的解決方案來打印此對象。 非常感謝大家。 毛羅。
可能重複替換嵌套發電機[在Python瞭解發電機?(http://stackoverflow.com/questions/1756096/understanding-generators -in-python)相關問題:[Python yield關鍵字解釋](http://stackoverflow.com/questions/231767/the-python-yield-keyword-explained) – Bakuriu