Pythonのお勉強 Part73

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ f610-G7il)
垢版 |
2024/06/06(木) 08:48:10.07ID:DsazphEm0
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
エラー文(勝手に省略orスクショうp等の横着禁止)と
おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。

※前スレ
Pythonのお勉強 Part72
https://mevius.5ch.net/test/read.cgi/tech/1703659345/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2024/08/11(日) 23:43:17.68ID:kFb5FPwO0
>>440に対するレスかつ、結論の疑問が>同じ関数内で
と言ってるのに、限定されないケース持ち出すバカっているんですね
2024/08/11(日) 23:55:15.90ID:qxvMX8m80
まぁ決定的なのは
>1つの関数内で3つの変数に明示的にNoneを代入する状況
ほほう、なんで・・?
って部分の説明が一切されることなく
「いいと思うよ」「避けたほうが良い」
と感想レスでぐだぐだ消費してるところだわな
本来1,2ターンで終わる話やろ
2024/08/12(月) 00:03:43.33ID:3e/W6rSq0
もういいよ
2024/08/12(月) 00:29:47.69ID:Df7qTgwp0
発端部分はどうでもいいんだよ
ただの戯言

そこは無視して、面白い話題に展開させるのが腕の見せどころ
2024/08/12(月) 17:05:54.78ID:RqyD79my0
>>472
まとめ内容はだいたい合ってるよ

>ひとつは良くて、2つ、3つ、、はだめなの?
>その線引きはどこなの?みたいな
1つなら点滅黄信号
2つなら点滅赤信号
3つ以上なら赤信号
くらいの運転感覚

状態変数は増えれば増えるほど関数が複雑化するので
可読性/保守性を下げない範囲で可能な限り減らしたほうがいいというのが大前提

Optional型の変数はNoneの場合のハンドリングが必要だから余計に複雑度が増す
だからNoneで明示的に初期化が必要な関数ローカルの状態変数が3つもあるのなら
リファクタリングを検討したほうがいいと思ってる

x=y=z=0のようなのも無条件で問題なしということではなくてNoneほどは気にしないだけ
2024/08/12(月) 17:20:13.21ID:3e/W6rSq0
Optionはモナドがないと単にチェックが面倒なだけなんで要りません
2024/08/12(月) 17:41:21.72ID:kQJ3Ra+V0
やはり主観の感覚で言ってただけか
2024/08/12(月) 17:46:09.35ID:t+JXHNsb0
数値型でも無意識にstrに変換されたりするので
むしろ気休めで宣言することでコードの可読性が上がるケースはあるな
2024/08/12(月) 22:12:29.66ID:piSTAl/Q0
>>429
簡単なものならどれも作れるだろ
2024/08/12(月) 22:13:50.74ID:Df7qTgwp0
作れるもんなら作ってみれ
2024/08/12(月) 22:17:45.91ID:piSTAl/Q0
PyQtのデモに簡単なものがありそうなものばかりなんだが
2024/08/12(月) 22:21:04.23ID:/YNzioSd0
何を以て作ったと言えるか定義にもよるよな
ライブラリ使っちゃいけない縛りだったら絶対やろうと思わないわ
2024/08/12(月) 22:30:00.09ID:piSTAl/Q0
Pythonはライブラリが豊富だから使われているんだから、ライブラリを使うことが前提条件だよね
2024/08/12(月) 22:32:25.47ID:piSTAl/Q0
ライブラリの中には、自分のプロジェクトに合わない法的縛りがある場合があるからそういうのは除外しないといけないけど
494デフォルトの名無しさん (ワッチョイ 6219-vl8G)
垢版 |
2024/08/13(火) 05:10:08.20ID:OFJnbVf+0
法的w
2024/08/14(水) 01:06:20.97ID:UXFppRKs0
Python初心者に「このライブラリ面白いから入れて遊んでみ」ってやつでおすすめある??
496デフォルトの名無しさん (ワッチョイ 09c8-EAYk)
垢版 |
2024/08/14(水) 01:17:50.66ID:Nyjt3p2D0
sleniumかのう
2024/08/14(水) 02:23:20.75ID:W/sfDy9u0
>>495
これが便利だけど、Listboxウィジェットでないと動作しなかったよ
でもListboxで十分
https://office54.net/python/tkinter/file-drag-drop
2024/08/14(水) 03:01:41.34ID:XIgNdm080
Streamlit
2024/08/14(水) 06:52:49.57ID:JNnpce7i0
1年前くらいにStreamlitでめっちゃ遊んでたが
あれから何か進展あったかな

当時は2段以上のページ遷移の実装がめんどくさかった記憶
2024/08/14(水) 09:36:06.91ID:YQXXxccb0
a系列とb系列の同じ数のデータがあって、
a系列の値でソートしたb系列のデータが欲しい

どういうデータの持ち方をするのが一番適切だろう
2024/08/14(水) 12:13:31.29ID:iBvZxVPY0
>>500
どういうデータの持ち方をするのが一番適切なのかは
そのデータにまつわるすべてのCRUD操作について
頻度・データ量・性能要件などの詳細を明確にしてから検討するもの
a系列の値でソートしたb系列のデータが欲しいという
一つの操作だけで判断できるものではない
2024/08/14(水) 12:49:52.86ID:YQXXxccb0
a[i]とb[i]の場合
sorted(range(len(a)), key=lambda x: a[x])

l[i]['a']とl[i]['b']の場合
sorted(l, key=lambda x: x['a'])

l[i].aとl[i].bの場合
sorted(l, key=lambda x: x.a)

もっとすっきりと、
sorted(l, key=a)
みたいに書けないものか
503デフォルトの名無しさん (アウアウエー Sa4a-ZlnX)
垢版 |
2024/08/14(水) 14:51:05.74ID:92pG5tQ9a
>>500
pandas
2024/08/15(木) 09:30:21.30ID:7XNNm+7n0
a[i]とb[i]の場合は
sorted(zip(a, b), key=lambda x: x[0])
こんなんでもいい
2024/08/15(木) 09:31:33.49ID:IOoAsN9I0
keyいらん
2024/08/15(木) 09:33:42.86ID:7XNNm+7n0
そうだった
1つ目のタプルでソートするんだった
忘れてるくらいだから、暗黙として使うと読めなくなりそう
2024/08/15(木) 09:44:05.66ID:7XNNm+7n0
そうすると、key要らない個別リストで持つのが一番シンプルだな

格納方法の手間はそれぞれでかなり違ってて、
個別リストは個別にappendするだけ
辞書は準備できたらセットでappend
classは当然classが必要 タイミング等は辞書と同等

要素2個ならリストでいいけど、3個以上のものを個別に持つのは気持ち悪いので、
そんなデータ構造なら他の理由からもclassが楽だろう
でも2個のケースが圧倒的に多い
2024/08/15(木) 09:59:05.23ID:hgBkEHHk0
独自の振る舞い与えたりやインターフェースにしたいならクラスで書いてもいいけど
Pandasが楽でいろいろ手厚い
有名だから他人の理解も得られやすいし
2024/08/15(木) 10:31:29.70ID:7XNNm+7n0
要は2次元配列を扱おうとしていて、pythonにそんなデータ構造は無いから苦労してるだけなんだよな
numpyを入れれば解決するかというと、
やってやれなくはないけど、逆に複雑なことになってしまう
もう一重被せてpandas、ということなんだけど、pandasはあんまり近寄りたくないんだよな
2024/08/15(木) 10:48:30.73ID:7XNNm+7n0
polarsの場合
df.select(pl.col('val', 'name').sort_by('val'))

抽象化が進む
selectが要るのは、そういうものなのだろう
2024/08/15(木) 13:32:50.80ID:l9rIXl+/0
特定のHPを開くやつ作ったんだけど
こんなエラー出る。 詳しい人意味と対策教えてください

DevTools listening on ws://127.0.0.1:54343/devtools/browser/87ef9d15-6c10-4859-ad8e-0f40190709a3
[4184:21844:0815/132851.755:ERROR:ssl_client_socket_impl.cc(883)] handshake failed; returned -1, SSL error code 1, net_error -107
[4184:21844:0815/132851.760:ERROR:ssl_client_socket_impl.cc(883)] handshake failed; returned -1, SSL error code 1, net_error -100
2024/08/15(木) 13:42:48.29ID:7XNNm+7n0
Seleniumよりいいの?
513デフォルトの名無しさん (ワッチョイ 6219-vl8G)
垢版 |
2024/08/15(木) 15:02:01.87ID:wvw+pa8M0
>>495
omanko
2024/08/15(木) 15:10:49.80ID:WrspfLfR0
>>505>>506
sorted(zip(a, b))とsorted(zip(a, b), key=lambda x: x[0])はソート結果が違うので要件を見極めてから使い分けてね
2024/08/15(木) 15:51:14.21ID:FZXdmvv90
>>511
SSL証明書のエラー
証明書のチェックを無視しろ
516デフォルトの名無しさん (ワッチョイ 0910-EAYk)
垢版 |
2024/08/16(金) 14:50:00.96ID:csQM6Qg30
>>515
どうもありがとうな。
きちんとページ開いてクリックはされてるから
このエラーはほっとけばええってことか。

>>336>>511はワイや。
誰も教えてくれんから
自力でポイントサイトに毎日自動でログインして
必要箇所クリックしてくれるプログラム作ったで。
2024/08/16(金) 16:30:40.64ID:ghvDT0nG0
kindleのアンリミテッド対象でオススメの入門とかある??
2024/08/16(金) 16:52:04.12ID:Lkm5DKgc0
無いだろうな
基礎的なことはネットで足りる
進歩的な内容は金かかる

effective pythonの旧版がamazonで送料込み500円しないので、それをポチる
2024/08/16(金) 18:05:55.70ID:djtLdUd20
python使い始めたが、
配列のdeepcopyじゃなく、copyって何に使うの?
コピー元の値も変わっちゃうけど
2024/08/16(金) 18:11:44.26ID:6tCTFnFi0
別名
2024/08/16(金) 18:15:45.87ID:mRy6k/zm0
>>519
shallow copyとdeep copyという一般概念を学んでくれ
ChatGPTにでも聞けば丁寧に教えてくれるはず

それ後に
なぜコピー元の値も変わっちゃうと思っちゃったかを振り返ってくれ
522デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 18:16:18.01ID:GehV+MKu0
>>519
それは用語のセンスがなかっただけ
523デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 18:17:23.95ID:GehV+MKu0
>>521
そもそもちゃんとドキュメントや書籍を読めよ!
2024/08/16(金) 18:38:35.65ID:Lkm5DKgc0
https://i.imgur.com/Jw8AJnB.png
主に自分の理解用教材画像

ただの代入はコピーではなく別名定義
コピー元を変えるとコピー先も当然変わる

copyは別オブジェクトを生成する
コピー元を変えても(浅いレベルなら)コピー先は変わらない

copyであっても、オブジェクトの中身はただのクローンなので変わってしまう

中身も変えたくない場合はdeeocopy
2024/08/16(金) 18:43:15.00ID:Lkm5DKgc0
deepcopy使ったのは、再帰でパズル解いた時くらいだな
分岐先に渡したデータを変更しても戻った時には保存されてないといけない
2024/08/16(金) 19:06:56.83ID:nKGchtUv0
>>523
めっちゃブーメランささってない?
ちゃんとドキュメントや書籍を読んでたら>>522はないだろ
2024/08/16(金) 19:20:56.16ID:Lkm5DKgc0
参照するだけならクローンもコピーも不要なんだよな

わざわざcopyするということは、その後どちらかを書き換える前提な訳で
書き換えるけどshallowしか使わない設計にしてるから大丈夫な筈
という綱渡りをしてるとしか思えない
528デフォルトの名無しさん (ワッチョイ 6d0e-u7mq)
垢版 |
2024/08/16(金) 20:09:34.83ID:l1JK1BDI0
>>527
コピーは割とよく使われるぞ
以下のような関数呼び出しでも x から data へのシャローコピーが起きるし

def func(data: list[int]):
 print(data)

x = [1, 2, 3]
func(x)

処理を分割することはよくあるので、そうと認識してないかもしれないけど、コピーは自然に使われてる

補足すると、これをコピーでなく参照渡しと思う人もいるかもしれないけど、それはよくある誤解
なぜなら、funcの中で data が指すリストの中身を変更することはできるけど、呼び出し元の x にstr など別の値を代入することはできないため
funcの引数dataは呼び出し元の変数xではなく、xからコピーされたものが渡されている
2024/08/16(金) 20:11:22.47ID:Lkm5DKgc0
参照しかしないなら怖くもなんともない
2024/08/16(金) 20:15:51.59ID:Lkm5DKgc0
https://i.imgur.com/vnmAGYS.png
こんな風に、簡単に壊れてしまう
2024/08/16(金) 20:19:07.36ID:Lkm5DKgc0
https://i.imgur.com/OEZkRte.png
こっちで
2024/08/16(金) 20:19:17.75ID:HvNqjSRc0
>>528はコピーではない
2024/08/16(金) 20:32:15.57ID:Lkm5DKgc0
https://i.imgur.com/hMHBIXd.png
コピーではなく別名だね
参照渡しと思ってもいい

参照渡しは誤解だという誤解はどこから発生したのだろう
2024/08/16(金) 20:35:35.86ID:HvNqjSRc0
参照の値渡しと参照の違いを学んで混同したんだろう
535デフォルトの名無しさん (ワッチョイ 6d0e-u7mq)
垢版 |
2024/08/16(金) 20:45:28.33ID:l1JK1BDI0
すまねえこれは自分の勘違いだ
x = [1, 2, 3]
y = x
z = x.copy()

のyの動作もシャローコピーと看做せると認識してて、関数の引数の挙動はこれと同じであると言いたかった

参照渡しではないというのは、C++やC#にあるような参照渡しはできない (呼び出し元の変数に別の値を代入することはできない) というのが主張
2024/08/16(金) 20:49:44.47ID:Z05myL510
pythonに参照渡しは存在しない
というのは暴言か
2024/08/16(金) 21:01:45.54ID:Lkm5DKgc0
無いでしょ
全てが、参照の値渡しの筈
2024/08/16(金) 21:16:31.87ID:Lkm5DKgc0
pythonに参照渡しは無いので、参照渡しの挙動で中身を推測すると間違う

値渡し pass by value
参照渡し pass by reference
参照の値渡し(共有呼び, オブジェクト呼び) call by sharing, call by object

アドレスではなくオブジェクトを渡しているというのが最大のミソなんだけど、
何が違うねんという理解でもあまり困らない
539デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 21:19:00.72ID:GehV+MKu0
Pythonの実装はポンコツだから、Pythonそのものは誰も好きじゃない。

いいところは例外が事前に定義されているところ。
540デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 21:21:26.06ID:GehV+MKu0
>>538
いわゆる参照渡しの変数の値を参照しても格納されている値は保証しないというのが、多くのプログラミング言語だ。

これは実装次第で変わってくるため、言語仕様とは別の話。
2024/08/16(金) 21:49:58.00ID:gx6pQUFB0
テキトー書いてるひとは自己申告してくれるとたすかる
いまのところ把握できてるけど
2024/08/16(金) 21:59:20.67ID:ClCJIGxl0
>>533
「基礎的なことはネットで足りるキリッ」からの参照渡しを知らんとかお前は全然足りてないやんw
2024/08/16(金) 22:04:19.29ID:Z05myL510
ミュータブルとかイミュータブルとかは
当初は「なんでこんな仕組みなんだ」
って思うけど、値渡しの挙動とか考えると
納得がいくんだよな
544デフォルトの名無しさん (ワッチョイ 1984-hgB2)
垢版 |
2024/08/16(金) 22:15:25.83ID:N3uolhZj0
参照渡しの議論をする人は、C++での参照渡しを理解してからか、
そうでないなら独自の「参照渡し」の定義をしている可能性があるので定義を述べてからにしてほしい

def f(x):
x=2

y=1
f(y)
print(y)
で2が出るのがC++でいう参照渡し
2024/08/16(金) 22:28:01.36ID:xH5s9xm90
冷静に考えると、キーボードカタカタと人生の半分以上を
コーディングに費やす人間がこれから先当たり前になるのって
人類史上、初なんだろうな
まぁ近い将来カタカタする必要なくなる世界線もあるだろうけど
2024/08/16(金) 22:38:18.96ID:sAC4Fqoe0
独自の参照渡しを参照渡しの定義として語る人は何なんだろう
CS勉強してないとこうなるのかな
2024/08/16(金) 22:40:29.02ID:Lkm5DKgc0
元々参照渡しという言葉があったのに、
C++が新しい参照渡しを追加したからややこしくなっている
値渡しと参照渡しの二択の世界で、別のアドレスにコピーして渡すかポインタを渡すかの違いだった

C++で同じアドレスを指す別の変数の書き方が導入された
*pVar としなくても、Var のままで取り扱えて便利
やってることはポインタ渡しと同じ
2024/08/16(金) 22:50:59.65ID:Lkm5DKgc0
pythonの場合は、f(y)を呼ぶと、xにはyというオブジェクトが入っている
それだけの話なので、xに新しいオブジェクトを入れてもyには何の影響もない

C++だとxはyという変数の別名になる
だから、xに行った操作はyにも影響する
2024/08/16(金) 23:28:02.02ID:DX07HNt80
最近どこかで見た話だと思ったら
くだすれで2ヶ月前にあった話だった
こいつ全く学習してないな・・・
2024/08/16(金) 23:34:33.12ID:Lkm5DKgc0
「参照の値渡し」という語がうまいこと言ってるかと思えるかというと
全然そんなことはなくて、意味不明すぎる
これがしっくり来る日は永久に来ないだろう

オブジェクト渡しでええやん
551デフォルトの名無しさん (ワッチョイ 6d0e-u7mq)
垢版 |
2024/08/17(土) 00:00:36.88ID:K84lbgy40
C風に言えばポインタの値渡し
2024/08/17(土) 02:15:20.99ID:FbxJBc5j0
perlだとリファレンス/デリファレンスとか実体参照って言うな
これはわかりやすい
2024/08/17(土) 04:17:21.85ID:oNvrieZ10
>>550
 519だが、
copyの違いじゃなくて、
どういう用途に使われるのかを聞いたんだが、
トンチンカンなバカレスしか返ってこない…
2024/08/17(土) 04:58:48.74ID:jNc9Eb8A0
>>549
俺流参照で理解しといたらいいんじゃない?
どうせニートがかじってるだけなんだろうし
2024/08/17(土) 05:00:58.90ID:eDPa81400
https://i.imgur.com/x4pG7y4.png

intやfloatやstrのような値っぽい変数を渡すと、関数の中でそれを破壊しても呼び元では保存され、
listやdicのようなポインタっぽい変数を渡すと、副作用を持たせることができる
まるで、typeを見て値渡しと参照渡しを切り替えているような、、、

ここに、プログラムなんか全く知らない文系の名探偵を連れてくる
名探偵: 値が保存している関数の処理は全て、"x = "の形式をしている

これが正解であり本質である
2024/08/17(土) 05:19:55.19ID:eDPa81400
値とリストの中間みたいなstrでは顕著で、
str.replace() で置換後を返すんじゃなくて破壊的に置換してくれよとか、
str[0] = ' ' みたいにリスト的に扱わせてくれよと思ってもそんな手段は無い

イミュータブルがイミュータブルなのは、ミュータブルな処理が言語仕様のどこにも無いという
悪魔の証明みたいな方法で実現されている
必然的に、イミュータブルなオブジェクトの入った変数の変更は、新しいオブジェクトへの変更になる
2024/08/17(土) 06:42:25.04ID:xfy35KhQ0
組み込み関数や標準ライブラリが非破壊・破壊で統一感ないのは
互換性のためだからどうしようもないけど
変数のアサインはシンプル動作で誤解しようがない
イミュータブル・ミュータブルにちがいはなく
イミュータブルは獲得時に同じ実体(id)を返すってだけ
558デフォルトの名無しさん (ワッチョイ 498e-gw8m)
垢版 |
2024/08/17(土) 07:30:01.44ID:S6E7v25U0
馬鹿は用語だけ覚えて理屈を理解しないからいつまで経っても馬鹿なまま
プログラミングだけではなく世の中の真実がこれ
559デフォルトの名無しさん (ワッチョイ 7197-hgB2)
垢版 |
2024/08/17(土) 08:05:31.14ID:aGgOhja70
>>555
3ヶ月でいいからごたくを並べる前にCとC++でコード書きなよ。スッキリするから。
560デフォルトの名無しさん (ワッチョイ 6db8-u7mq)
垢版 |
2024/08/17(土) 08:08:33.52ID:K84lbgy40
>>553
この質問についていえば、個人的にはcopyを使う場面ってあまり無いと思う
561デフォルトの名無しさん (ワッチョイ 0931-EAYk)
垢版 |
2024/08/17(土) 08:56:53.76ID:NsTQR03i0
スマホゲームでレア鉱山というのが沸くんだが
それを内部的に沸いたら即取るみたいなプログラムを
教えてください。

お願いしますぺこり
2024/08/17(土) 08:58:23.47ID:oNvrieZ10
>>560
まずは調べろ
的なバカレスが多いね…
2024/08/17(土) 09:46:14.10ID:LklgFq+T0
質問者から見てバカレスに思えるレスが多数つくのは質問内容や質問の仕方がそれ以上にバカっぽいからなんだぞ
反省しろよ
2024/08/17(土) 11:04:30.43ID:eDPa81400
https://i.imgur.com/LR4dCLW.png

数をイミュータブルとする為に、pythonでは全ての数に対して
対応するオブジェクトのidが予め設定されている
なんとなく数学的センスで全ての数なんて相手にしたら無限にメモリが要りそうに思うけど、
何のことはない、
intオブジェクトであることを示すbit列 + intのbit列表現そのもの
で実現できる
python2は本当にそんな感じで、3になって動的にbit数が変わるようになった
2024/08/17(土) 14:09:06.79ID:jNc9Eb8A0
>>553
逆にcooyがわからない理由が不明なんだけどw
例えば整数のリストとか普通にコピーしたくならんか?
そしてコピーした配列の一部だけを書き換える
2024/08/17(土) 14:17:24.07ID:ReFbJvTn0
だいたいメソッドのほうの.copy()で十分だから
copy.copy()の使いどきはあるのかよくわからない
immutableとmutableを意識せずにコピーする用途なんてあるかな
2024/08/17(土) 14:18:31.35ID:SZXysGd00
>>564
馬鹿につける薬はなさそうだなw
2024/08/17(土) 15:31:12.95ID:eDPa81400
https://i.imgur.com/LjROLoj.png

strの場合はそんなに厳密ではない
リテラルに書けば同じidになるけど、演算結果が同じになったとしても
わざわざ同じidに集めたりはしない
2024/08/17(土) 16:21:00.49ID:dSpnymJm0
>>566
任意のオブジェクトをシャローコピーしようとするのがcopy.copy()
基本的にはmutable用
どの型かを意識せずに汎用的にコピーしたいときに使う

copy()メソッドを持つのが確実なら.copy()を呼べばいい
copy.copy()も例えばlistが渡されたら内部的にはlist.copy()を呼んでる
2024/08/17(土) 17:39:52.82ID:oNvrieZ10
>>565


それをやる意図は?
目的は?
571デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 00:56:03.56ID:qMq0AqVM0
>>544
Pythonの関数の実装が、ただのプログラムのジャンプのような説明になっているんだよ。
572デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 00:59:10.22ID:qMq0AqVM0
>>569
Pythonそのものがマシン語、アセンブラでいうところの呼び出しになっていない可能性がある。

関数が後付けだったせいで、コード上の見た目が関数という別のプログラムに見せかけているだけかもしれない。
2024/08/18(日) 01:01:46.95ID:z4/qydmG0
折角中身を隠してあげてるのにCPythonでの実装を知りたがる
でも結局、CPythonのソース読むのが理解の最短距離
2024/08/18(日) 01:14:18.28ID:mCdxu7x30
コピーの深い浅いにかんしては、
多次元リスト(リストを要素とするリスト)でどうなるかということを考えると、
違いはそんなには混乱しないとは思うんだけどね

シャローコピーはスライス式で(意識することなく)作成されることが多いかも
2024/08/18(日) 01:28:14.09ID:z4/qydmG0
何の為にコピーするのか、を考えると、浅いコピーで十分なケースが想像できないんだよな
リストの削除や追加をしたいだけで、要素の中身についてはノータッチな処理
何それ
576デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 02:28:48.09ID:qMq0AqVM0
このスレは初心者だから、データの大きさを気にしてないんだろうな。
2024/08/18(日) 05:45:04.91ID:ucdOco2s0
Pythonのコピーについて調べてみて俺もあまり意識せずにリストのコピーとかしてたけど、コピーしたあとにコピーもとをいじくることってないから別に気にせんでいいなって思った
まぁでも知っておくのは大事やね
2024/08/18(日) 06:56:50.44ID:JrXKrbOQ0
>>564
-500とかどうなんの?
2024/08/18(日) 09:20:21.58ID:SIlzIa7v0
>>577
519だが、
結局、
誰からもまともなレスが無いという…
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況