問題タブ [iterable-unpacking]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2125 参照

python - Pythonでの解凍エラー

私はスクリプトを作成していますが、これを行う必要があります。

しかし、私はこのエラーを受け取ります:

このdataように構築されています:

csvファイルの小さなサンプル:

200.35.126.30;dnscan01.mnc0004.mcc02de.gprs;View_Blackberry;DNSCAN01 0.0.0.0;lac.rac.prueba;View_Blackberry;DNSCAN01 200.35.126.29;dnscan02.mnc0004.mcc02de.gprs;View_Blackberry;DNSCAN01 127.0.0.1;localhost.mnc0004.mcc02de.gprs;View_Blackberry;DNSCAN01

私がする時:

私は4つしか取得できませんが、リストデータの任意の位置が4つのメンバーリストであると想定できます。

私がそれに4を与えているとき、なぜそれが3人以上のメンバーが必要であると私に言ったのか分かりません。

このコードで何が起こっているのですか?

0 投票する
3 に答える
1817 参照

python - アンパックする複数の値

私はこのコードを実行します:

そして、このエラーを取得します:

0 投票する
1 に答える
336 参照

python - Pythonで外部メソッドを呼び出しているときにタプルを解凍するにはどうすればよいですか?

次のように、クラス内で外部ライブラリのメソッドを複数回呼び出します。

ステートメントを含む行は、with毎回定数を引数として渡す必要があるため、私を悩ませています。タプルのような事前定義されたデータ構造に引数を格納し、それを外部ライブラリに渡したいと思います。

0 投票する
2 に答える
206 参照

python - より多くのデータを返し始めてもクライアントコードを壊さない、パッケージ化されていない値の iterable を返します

公開しようとしている API を書いているとしましょう。APIの関数quuxは、タプルのリストまたはジェネレーターを返しますyield (foo, bar)

クライアントコードは通常、次のように使用します。

ここで、将来、および とbaz一緒に戻りたいと思うかもしれないとします。YAGNI がそうでないことが証明されるまでは、今すぐ返品したくありません。foobar

そのような将来の変更がクライアント コードを壊さないようにする (しようとする) 最善の方法は何でしょうか?

私は、Python 3 では人々が次のようなことを行うことができることを知っています。Python for foo, bar, *idontcare in quux(whatever)2 では、常にユーティリティ関数を記述できます (このように使用するためfor foo, bar in iterleft(quux(whatever), 2)):

しかし、このようなことを行うためのより良い方法があるかどうか疑問に思っていました.

0 投票する
1 に答える
388 参照

c++ - std::tie はどの程度例外的に安全ですか?

std::tie参照のタプルを返すため、次のことができます。

foo, bar, baz = (1, 2, 3)これはPython の場合と似ています。

次の例のように、割り当ての 1 つがスローされた場合はどうなるでしょうか?

1337 または 42 を出力しますか、それとも未指定ですか?

0 投票する
1 に答える
136 参照

python - リストを渡すよりもアンパックが好まれるのはなぜですか

引数リストのアンパック:

vs最初にリストを送信する:

0 投票する
1 に答える
432 参照

python - Python のタプルとリスト。変換を拒否するタプル

これが失敗する理由を知る必要があります:

コードを実行すると、次のメッセージが表示されます。 <snip> ConfigurationError.py", line 7, in __init__ self.args[0]=self.__prettyfi(self.args[0]) TypeError: 'tuple' object does not support item assignment

行番号を編集しました。このコード サンプルと一致するようにします。

self.args = list(args)5 行目のリストにタプルを正しく展開しない理由がわかりません。

(超基本的なことを覚えていないのではないかとこっそり疑っています...)

0 投票する
2 に答える
106 参照

python - iterableを他のiterableに解凍しますか?

ASCIIファイルからデータを読み取っているときに、次のようなことをしていることに気付きます。

1行あたりの要素数が決まっている場合(これは私が行います)¹、解凍する複数要素のエントリが1つしかない場合は、 `(a、b、* c、d、e)= ...'(拡張された反復可能な解凍)。

そうしない場合でも、もちろん、上記の例の2つの複数要素エントリの1つ(a, b, *c, d, e, f1, f2) = ...をスター付きコンポーネントに置き換えることができます。

私の知る限り、itertoolsここではすぐには使用できません。

私がおそらく気付いていない理由で「よりPythonic」と見なされる可能性のある上記の3行のコードに代わるものはありますか?

¹それは決定的ですが、それでも行ごとに異なります。パターンは、numpys関数loadtxtまたは。に対して複雑すぎgenfromtxtます。

0 投票する
3 に答える
3983 参照

python - Python: タプルをディクショナリにアンパックできないのはなぜですか?

なぜこれが機能しないのですか?:

私が達成しようとしていることを達成するためのより良い方法はありますか?

0 投票する
1 に答える
396 参照

python - Pythonリストの解凍に改行をどのように含めますか?

いいですが

あまりいいではありません。Pythonは通常、コンマの後の改行をサポートするのに適していますが、この構文を理解することはできません。このようなものがいいでしょう:

長い行は反PEP8であるため、これを処理するPEP 8の方法は何ですか?