次のような関数があるとします。
myFunction(arg, arg, kwarg, arg, arg, kwarg, etc...):
arg は *arg で、kwarg は *kwarg です。今まで、私の関数は次のように見えmyFunction(*args):
、*args の長いリストだけを使用していました。このような大きなリストを渡すだけでした。
myFunction(*bigList):
bigList は次のようになりました =[[1,2,3],[4,5,6],'hello',[1,3,5],[2,4,6],'world',etc...]
しかし、今では 3 番目の引数ごとに kwarg が必要です。したがって、私の考えでは、リストは次のように「見える」ようになりました。
newBigList = [[1,2,3],[4,5,6],word='hello',[1,3,5],[2,4,6],word='world',etc...]
したがって、これを機能させるには 2 つの質問があります。
1)関数が実際の引数としてそれを読み込まずに、kwargの文字列でリストを作成できますか? のword
(s) はnewBigList
文字列でしょうか?
2) kwargs と args を交互に使用できますか? kwargs は通常辞書で行われることを知っています。両方を交互に使用することは可能ですか?
いつものように、これを行うためのより良い方法を誰かが知っている場合は、喜んで変更します。
編集方法は次のとおりです。多角形(または多角形の束)をプロットするmatplotlibメソッド:
plot([x1], [y1], color=(RBG tuple), [x2], [y2], color=(RGB tuple), etc...)
は最初のポリゴン[x1]
の x 値のリスト、[y1]
は最初のポリゴンの y 値のリストなどです。
問題は、color 引数に RBG 値を使用するには、color キーワードを含める必要があることです。さらに複雑なことに、random.random()
モジュールを使用してランダムなタプルを生成しています。
したがって、すべてのポリゴンの x 値のリストのリスト、すべてのポリゴンの y 値のリストのリスト、およびランダムな RBG 色のタプルのリストがあります。それらは次のようになります。
x = [[1,2,3], [4,5,6], [7,8,9]]
y = [[0,9,8], [7,6,5], [4,3,2]]
colors = [(.45, .645, .875), (.456, .651, .194), (.813, .712, .989)]
したがって、プロットするポリゴンは 3 つあります。キーワードをできるようになる前に私がしていたことはzip
、それらをすべて 1 つのタプルにまとめて、このように使用することでした。
list_of_tuples = zip(x, y, colors)
denormalized = [x for tup in list_of_tuples for x in tup]
plot.plot(*denormalized)
しかし、今はそれらのキーワードが必要です。また、必要に応じてさらに情報を提供させていただきます。ありがとう