Pythonのお勉強 Part75 (921レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
380
(8): (ワッチョイ 6d54-bkwb) 06/24(火)20:16 ID:oUEsN0j80(1/3) AAS
vectorというオブジェクトがあって
for item in vector:
みたいに読み出すと、
(0, 100)
(1, 200)
みたいにindexとvalueのタプルが返る

一方、リストとしてもアクセスできて、
省2
387: (ワッチョイ 4b10-xDDR) 06/25(水)07:47 ID:E5oJMqOn0(1) AAS
dunder属性のカスタマイズが禁じ手だとは必ずしも思わないけれど、>>380の例なら組み込み関数enumerateを使う方が普通だし分かりやすいんじゃないかなと思うけど。
389: (アウアウウー Sa69-G7Nc) 06/25(水)09:42 ID:MDVgP0HOa(1) AAS
>違う言語みたいにする

積極的に乗っとるのは良いけど違う言語みたいにするのは違うんだよな
立ち入った方が良い場面があるし立ち入っても(普通は)違う言語みたいにはならない

>>380 の例は
>enumerateを知らない人
に一票
395: (ワッチョイ e381-xDDR) 06/25(水)20:47 ID:2LI3KTsN0(1/2) AAS
>>380ならenumerateでいいんじゃないかという話は分かるんだけど、>>380とsparseなarrayというのがどう繋がっているのかよくわからないんだが。380とは別の話になってる?
396: (ワッチョイ 6d54-bkwb) 06/25(水)20:51 ID:slGHajaU0(2/4) AAS
>>380はアクセス方法によって挙動が変わるオブジェクトの話がしたいだけで、
enumerateは何の関係もない
397: (ワッチョイ e381-xDDR) 06/25(水)21:02 ID:2LI3KTsN0(2/2) AAS
うーん、>>380の(0, 100)(1, 200) という出力例(およびindexという用語を使ったこと)がまずかったということかな。380を見れば平均的なPytnonユーザーはenumerateの話かなと思うのが普通だと思うけど。
イテレーションに対して(0, 100)(1000, 'hi') を逐次的に返すようなオブジェクトの話がしたいってことだったのかな。
400: (ワッチョイ 05da-xDDR) 06/25(水)23:10 ID:SPCnqGQx0(1/2) AAS
誤読とか早とちりって言われても、>>380みたいなことをやりたいならenumerateを使うのが最も普通の発想だしなぁ……(enumerateを知らない人ならともかくとして)。
>>380の0, 1 というindexの例とか「リストとしてアクセス」という表現からは、>>388のいうsparseなarrayの話は想起できないってことをやんわり遠回しに示唆したら、誤読で早とちりって言われちゃったよ。何で説明能力のないやつに限って自分の能力の欠如を人のせいにするんだろうね。挙句に「なんで引きずるかな」と来たよ。お前がそう書いたからだよ。さすがにちょっとげんなりした。
447
(1): (ワッチョイ b754-1VI2) 07/12(土)15:22 ID:bJvRyWpc0(1/2) AAS
sparseの話に戻ってきたな
>>380は売り物のシステムの一部で、どうやってるんだろうと見たけど.pycしか無かった
しかも本体はC++だった
448: (ワッチョイ bf01-6GxP) 07/12(土)17:03 ID:Tw4RWHuP0(1) AAS
>>447
JavaScriptのArrayはイテレート時にundefinedの要素も返す必要があるからそういう使い方をしないsparse arrayとは異なる

本体がCやC++でもPythonのC APIで__iter__や__getitem__相当のものを定義するだけ

少し調べればわかることだと思うんだが>>380から3週間も足踏み状態?
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.028s