[英]Recursion - list of strings and lists
是否可以使用遞歸將字符串列表和列表轉換為通常的(普通)列表(這只是一個例子。列表可能更深更復雜)
我還不太擅長遞歸,任何幫助或提示將不勝感激!
遞歸的一般思想是將問題分解為更小的部分——弄清楚如何解決最簡單的情況,然后以將它們縮小到最簡單情況的方式表達更復雜的情況。
>>> def flatten(nested):
... flat = []
... for i in nested:
... if isinstance(i, list):
... flat.extend(flatten(i))
... else:
... flat.append(i)
... return flat
...
>>> flatten(['hello', ['hey', 'heey', ['hey']], 'hi', ['hihi']])
['hello', 'hey', 'heey', 'hey', 'hi', 'hihi']
對flatten
每次調用都需要一個列表/字符串列表,並預期返回一個僅包含字符串的列表。 它通過檢查它的所有元素並flatten
列表來做到這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.