1
どのようなリストを取り、それを拡張できる関数を作成することができますか?私が話していることは次のとおりです。リストを拡張する関数
def list(l, p):
return l.extend(p)
また、pには任意の性質のものが必要です。
どのようなリストを取り、それを拡張できる関数を作成することができますか?私が話していることは次のとおりです。リストを拡張する関数
def list(l, p):
return l.extend(p)
また、pには任意の性質のものが必要です。
キーワードを上書きしないようにしてください。私はあなたの質問の理解に基づいて回答を投稿しますが、これはあまり明確ではありません。
def my_list(l, *args):
from itertools import chain
sub_lists = filter(lambda x: isinstance(x, list), args)
elements = filter(lambda x: not isinstance(x, list), args)
l.extend(list(chain.from_iterable(sub_lists)))
l.extend(list(elements))
return l
l1 = [1, 2]
l2 = [3, 4]
l3 = [5, 6]
e = 7
new_list = my_list(l1, l2, l3, e, 8)
# [1, 2, 3, 4, 5, 6, 7, 8]
print(new_list)
それはまさに私が探していたものです。 – Shyryu
* * – mentalita
'extend'を使わないのはなぜですか? – Mureinik
まず第一に、あなたは 'list'の組み込み関数を定義し直すのが非常に悪いです。次に、「どんな本質」と言ってどういう意味なのかを明確にしてください。 Pythonには_iterable_および_non-iterable_値があり、どちらの結果が期待されるのかを説明しています。 – myaut