2 つの Python リストを交換すると、2 つの異なる操作の結果が異なります。その理由は何ですか?
仅有的幸福
仅有的幸福 2017-05-24 11:35:35
0
3
709
リーリー

最初の操作は次のようになりますが、期待と一致しません:

リーリー

a=[0, 0, 0, 0, 0, 1, 1, 1, 1] | b=[0, 0, 0, 0, 0, 1, 1, 1, 1]

2 番目の方法は、リスト b を一時的に保存するために中間値を追加することです。結果は次のようになります:

リーリー

a=[0, 0, 0, 0, 0, 0, 0, 0, 0] | b=[0, 0, 0, 0, 0, 1, 1, 1, 1]

仅有的幸福
仅有的幸福

全員に返信(3)
淡淡烟草味

実際のところ、「結果の違い」が何を意味するのかよくわかりません。あなたの出力は非常に正常ではありませんか?
xor(a,c), 将列表a的每个元素, 和列表c的每个元素取异或结果, 导致列表变成结果a变成[0, 0, 0, 0, 0, 1, 1, 1, 1]
リスト a を変更する際に、xor 関数はリスト a を返し、それを b に代入します。このように、b と a は同じリストではないでしょうか? 以下の「中間変数」は、b の以前の値を格納するだけです。最初の方法を使用して 2 番目の方法の効果を実現したい場合は、それを b に代入する代わりに直接置き換えることができます

リーリー
いいねを押す +0
大家讲道理

最初の方法は、b の値を変更し、次に a と b を交換することです。2 つ目の方法は、新しい値 Mid を定義し、次に b の値を変更してから、mid を a に代入することです。
この結果は正しいですが、何が問題ですか?

いいねを押す +0
伊谢尔伦

リーリー

この関数の本質は a を返すことですが、途中で変更がある可能性があります。その後

リーリー

スワップが 2 つだけの場合:

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!