くだすれPython(超初心者用) その52【まず1嫁】

■ このスレッドは過去ログ倉庫に格納されています
2021/01/09(土) 05:22:25.24ID:IpHIsox4
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがあるのでそっち池。
「Ruby」「某言語では」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。

このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。

★エラーを解決したい場合は、
  表示されてるエラー全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
  実行環境(Pythonのバージョン・OSとIDEの種類とバージョン)をシッカリ書くこと。

【【【複数の連続半角スペースはなかったことになる・タブがうまく入らない5chの仕様】】】に注意!
Pythonの★ソースコードをそのまま5ちゃんにコピペすると、インデントが崩れてチヌ★ので
  ↓等の、いわゆるコードうp用サイトに貼ってこいください。
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Python公式サイト◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi

〇前スレ〇 くだすれPython(超初心者用) その51【まず1嫁】
https://mevius.5ch.net/test/read.cgi/tech/1602896738/

次スレは >>985 あたりが挑戦してくだしあ。(980過ぎて自動落ちは、無くなって久しい)
### END OF TEMPLATE ###
2021/02/06(土) 23:05:26.75ID:l1Q4fjMo
https://ideone.com/IjrjUd
353デフォルトの名無しさん
垢版 |
2021/02/06(土) 23:08:53.63ID:s8ZQn1/T
その例のコードで 0,1,2,3,3,3,...... って出力されるの?
やべーねその言語
2021/02/06(土) 23:10:49.88ID:B5gVBJsh
forじゃなくてwhileを使うのでは…
2021/02/06(土) 23:11:47.83ID:Ye4r/rjw
for i in range(5):
print (min(i, 3))
2021/02/06(土) 23:12:43.26ID:9BgHZVUo
for i in range(5):
____if i > 3 : i=3
____print(i)
2021/02/06(土) 23:15:55.88ID:1hxtRDLK
やりたいことはジェネレーターで無限ストリームっぽい気がする
2021/02/07(日) 00:16:21.39ID:jpmL2+yv
こういうこと?

i = 0
while True:
x = i
if i > 2:
x = 3
i = i + 1
print(x)
2021/02/07(日) 02:02:20.67ID:QRtsbk1z
[i if i < 3 else 3 for i in range(5)]
2021/02/07(日) 04:46:16.11ID:9cKdY56s
printせえよ
2021/02/07(日) 08:50:24.56ID:JR5bkMUq
>>351
まじほんと>>353だは…
351は偽Pythonをつかまされているのでは
2021/02/07(日) 09:10:55.34ID:FFuFCGQD
sorted関数はwindowsの名前順と同じようにソートするんですか?
natsort?
2021/02/07(日) 10:44:13.68ID:KNf11SZT
dictの型ヒント書こうとしているんだけど、TypeScriptみたいにキー毎に
値の型を指定するような芸当は無理だよね?
2021/02/07(日) 10:57:54.98ID:7XkuYEp+
>>363
typeddictとかいうの無かったっけ
tsと同じようなことできた気がする
2021/02/07(日) 11:24:42.44ID:KNf11SZT
すげぇ。ありがとう。
2021/02/07(日) 11:44:28.72ID:kn8KLgWd
>>362
Windowsのソート順は分からないけど
2021/02/07(日) 13:56:45.22ID:+o5/+U2b
>>366
windows上で、フォルダの中に名前順に並んだ複数ファイルがあって
これをそのままの順番で取得したいんですが、glob+sortedでいいのでしょうか?
windows上での並び順と異なる場合があるとかだと困るのです
2021/02/07(日) 14:00:38.24ID:NCHwUWPY
>>367
なんで困るの?
2021/02/07(日) 14:10:44.92ID:7XkuYEp+
sortedはnatsortじゃないです
2021/02/07(日) 14:11:22.42ID:3B496xZd
_1 と _01 の話でしょう。
エクスプローラは長さ判定の方が
優先順位が高いアルよ
2021/02/07(日) 14:33:32.29ID:mFk3/GAA
エクスプローラーのソート順は全角半角同一視とかロケール依存もあるでよ
372デフォルトの名無しさん
垢版 |
2021/02/07(日) 15:22:35.38ID:FFuFCGQD
スクリプト使用者は日本語環境のwindows
フォルダ内に任意の命名規則の連番ファイルが数種類混在する
つかわれる文字種は全半角日本語英語、数字と記号(文字化けした中国語っぽいやつはありえる)
例えば
.01.02
.あ001.い001
._01a._01b
という3ルールがひとつのフォルダ内にあって、命名規則は制限できない
エクスプローラー上で表示される名前順の並びに意味があるので、順番を保持したデータ構造を取得したい

です!
373デフォルトの名無しさん
垢版 |
2021/02/07(日) 15:31:29.22ID:0RC+Q+w9
あ、個々の連番ファイル作成者も日本語windowsのエクスプローラーで順番を確認してます
374デフォルトの名無しさん
垢版 |
2021/02/07(日) 15:39:10.65ID:LHj1ntdf
sortedは単なる辞書順
375デフォルトの名無しさん
垢版 |
2021/02/07(日) 15:54:16.47ID:UfsgAoOW
natも違う
windowsは.01→01と並べるけどnatは逆になる
2021/02/07(日) 16:09:32.73ID:QRtsbk1z
それを使って何がしたいのか分からないと見当違いになるかも知れないけど
ファイルへの処理を疎結合にはできないの?

あとはこれもnatsortと同じなのかな
sorted(paths, key = lambda x: int(x.name))
2021/02/07(日) 16:13:58.14ID:kn8KLgWd
そもそもWindowsと同じ並びにしなければならない理由が理解できないんだけど
どういう理由なの?
もし並び順に依存した処理が必要なんだっていうならばその実装がおかしいと思うけどな
2021/02/07(日) 16:22:59.73ID:NCHwUWPY
エクスプローラー上で表示される名前順に依存しなきゃいけないシステムってのがよくわからないけど
とりあえずnatsortのos_sorted()を試してみたら?
Windowsの場合はエクスプローラが使ってるAPIを使ってる

エクスプローラのソート仕様を100%把握するのは無理な気がするので
どういうテストケースを通ればOKとするかは事前に決めておかないと後で困りそう
2021/02/07(日) 16:25:23.50ID:KNf11SZT
windowsと同じにって言っても、ファイルシステムがFAT系とNTFSでも違った気がする。
380デフォルトの名無しさん
垢版 |
2021/02/07(日) 17:00:56.73ID:FFuFCGQD
>>378
あーこれですね。たぶん
ちょっと様子見つつ、動かしてみます。ホント助かりました

>>376
a, bさんがそれぞれ独自の連番データを持ってて、Aというひとつのフォルダに入力します
bさんは“エクスプローラーの名前順で”aさんのデータのあとに自分のデータを置くこと
aさんとbさんは異なる命名ルールを使って、第三者が“命名ルールを見て”群を区別できるようにすること
がルールです

そうして出来たAフォルダの中身を、自分が上から順に読み込んで処理する

みたいな…
2021/02/07(日) 17:11:24.53ID:QRtsbk1z
正規表現で群を分割してそれぞれの群に対して逐次処理していく
とかだと駄目なのかな?

単純にソートして順に処理していくとファイル漏れがあった時とかにバグりそう
2021/02/07(日) 17:25:25.92ID:kn8KLgWd
早々に破綻しそう
ユーザー名や更新日時を基準に考え直した方が早いよ
2021/02/07(日) 17:31:05.90ID:JR5bkMUq
ういんどーずあぷでーとである日地獄になりそう
2021/02/07(日) 17:42:05.53ID:kn8KLgWd
まずaさんとbさんのデータをわけなよ
その上でファイル名を正規化してソート出来る形にする
ソートの基準が違うものをソートしようとしてるから物事が複雑になる
なのでまずはソートの基準を揃えることから始めたら良いんじゃねーかな
385デフォルトの名無しさん
垢版 |
2021/02/07(日) 17:59:41.51ID:Ezbk+4+j
要するに
[".1", "10", "2", "1", ".2", "1"]
をwindowsエクスプローラー上の名前順
[".1", ".2", "01", "1", "2", "10"]
にソートするにはどうすればいいか的な話でしょ?

つか状況がクソだぞって指摘はしてあげるべきだろうが
そこを変えろって回答は論外じゃ…
2021/02/07(日) 18:10:18.26ID:/kKFnkGm
システムはエクスプローラーとか、特定のアプリのアルゴリズムに依存すべきじゃない。
ある日突然、変わるかも知れない。
API・規格が無保証だろ

自分のアプリは、自分で規格を定義すべき。
そうしないと、可搬性がなくなる

OS・ファイルシステムが異なると、結果が違ってくるから
387デフォルトの名無しさん
垢版 |
2021/02/07(日) 18:12:05.44ID:RFMN3ZYm
こういうメンドクセーもんは大抵はどっかの誰かが既に作ってあるハズだからpypiで探すか
標準で提供されてると見当つけて公式サイトを探す

自分が欲しいと思ったモンは99.99%の確率で他の誰かが既に実装してる
2021/02/07(日) 18:12:49.36ID:NCHwUWPY
>>385
命名ルールがわからないからそれで十分かどうかはわからない
ある時点のあるPCで見たエクスプローラの名前順をPythonで再現したいという話

命名ルールも再現したいエクスプローラのソート仕様の範囲も不明確なので事故るかどうかは運任せ
389デフォルトの名無しさん
垢版 |
2021/02/07(日) 18:31:26.56ID:4v/nAOdw
>>367
windows って explorer で表示したときの並び順と
プロンプトで dir で表示したときの並び順が
違うって知ってた?
0000
0001
1
111
10
20
みたいなファイル名で試してみ
2021/02/07(日) 18:39:15.86ID:JR5bkMUq
>>389
エクスプローラのソートとひとくちにいっても、
ターゲットのフォルダをあけた状態と
そこから左カラム右クリック新しいウインドウから開く でもいっこあけた窓の中で
順番変わる
391デフォルトの名無しさん
垢版 |
2021/02/07(日) 18:53:51.92ID:cgYbYP7a
この言い訳の山よw
2021/02/07(日) 18:54:51.98ID:JR5bkMUq
>>391
見本コードはようp
2021/02/07(日) 19:04:34.30ID:uQM/ElP7
並列処理をしているときに、何が実行されているか確認することって出来ますか?
キューに入って順番待ちになっているタスクも確認したいです。
WEBページを2〜3ページ並列で取得するようにしてるのですが、並列にしたときにデバッグで確認することも難しく教えていただければと思います。
2021/02/07(日) 19:05:55.85ID:kn8KLgWd
Pythonだとcelery
2021/02/07(日) 19:25:21.61ID:3B496xZd
9x年代の「accessの美しいsort順」の
再来かよw

アレの実装も凄いな
2021/02/07(日) 20:09:13.36ID:kn8KLgWd
>>385
そもそもユーザーがソート順変えたら破綻する仕組みに依存した設計とかどうしようもないだろ
2021/02/07(日) 20:11:08.97ID:JR5bkMUq
ユーザーが2個目のウインドウ開けてそっち見たらおしまいな件
2021/02/07(日) 21:30:52.36ID:HPp7Agld
https://docs.microsoft.com/ja-jp/windows/win32/api/shlwapi/nf-shlwapi-strcmplogicalw
windowsのpythonのos_sortedはこれで判定してる
2021/02/07(日) 21:33:41.58ID:xkZ6C6tJ
Behavior of this function, and therefore the results it returns, can change from release to release. It should not be used for canonical sorting applications.

だとさ
400デフォルトの名無しさん
垢版 |
2021/02/08(月) 00:38:44.29ID:5J2edDoW
>>397
横から
これで順番変わってる状態って見たことないけど、どういうファイル名の並びだとそうなるん?
2021/02/08(月) 02:14:42.69ID:wlkdd0te
ラズパイを載せたGoPiGoロボカーで、線虫脳シミュレート
https://www.youtube.com/watch?v=9kxty2qec4g

エラーを解決したので、試しに動かした
2021/02/08(月) 03:02:58.50ID:wlkdd0te
コードはGithubで公開されてるものを突っ込んだ
2021/02/08(月) 09:25:13.35ID:wJ3JIqDy
>>395
くわしく
2021/02/08(月) 09:29:15.28ID:dM4oOJoS
スイッチのONOFFに連動してアクション起こすものを作ってみたくてほぼ期待通りの挙動させられるようになったのですが、たぶんimportで他.py呼び出す時にエラー?になります。
スイッチONになればその都度実行してほしいのですが、一度きりしか実行されません。
importで呼び出す場合は回数制限のようなものがあるのでしょうか?
405デフォルトの名無しさん
垢版 |
2021/02/08(月) 10:17:14.59ID:WsHYblSd
どんなエラーがでてるか、そのまま貼った方がいいと思うな
2021/02/08(月) 10:58:40.46ID:hgsCKB/O
importの実行は一度だけ
なので関数にして都度実行
407デフォルトの名無しさん
垢版 |
2021/02/08(月) 12:17:07.33ID:5JxS4RLe
「importで他.py呼び出す時」
「importで呼び出す」
perlじゃないから考え方を変えろ
2021/02/08(月) 12:27:47.27ID:yv+/ZfUq
Pythonのimportは、COBOLのCOPYと同じと考えて良いですかね
ソースのその箇所に埋め込む感じの
2021/02/08(月) 12:44:47.59ID:5KN+Fjzm
>>408
全然違う
importは対象のモジュールがまだ現在のプロセスで読み込まれていない場合は読み込み、現在のスクリプトファイル内で使用できるようにする
COBOLの知識とか害悪でしかないから今すぐ全部忘れろ
2021/02/08(月) 13:10:02.10ID:dM4oOJoS
>>405
夜になりますが、そうしてみます。
while true:
if switch == true:
import action01
print("action01")
flag = true
else:
import action02
print("action02")
flag = false
みたいなコードで、printによる表示は正常にされていても、importでは呼び出せてないような挙動でした。エラーを吐いてるわけではありません。

>>406
ありがとうございます。
関数とimportの違いもわからないので、調べてきます。

>>407
プログラミングは昔Cのポインタで挫折したタイプなんでよくわかってません。
2021/02/08(月) 14:02:52.07ID:hgsCKB/O
>>408
>>410
Pythonのimportは名前空間にパッケージ名を登録してるだけ

import package # プロセスの名前空間にパッケージ名を登録
package.function() # packageに書いた関数を使う

import時、プロセス内に同じ名前のパッケージ名があれば読み込み不要だからキャンセルされる
なので >>404 のように一度しか実行されないってことになります
2021/02/08(月) 18:22:57.82
pandasのdropってディープコピーってことは
dropするたびに変数に入れないといけないってことですよね?
データフレームが大きいときその辺り気にしなければいけないのでしょうか
2021/02/08(月) 18:54:54.09ID:0fSH6U0R
Ruby でも、require・load は異なる

require は同じファイルは一度だけしかロードしませんが、 load は無条件にロードします。
require はライブラリのロード、load は設定ファイルの読み込みなどに使う

つまり、ライブラリ・モジュールの読み込みは、1回で良いけど、
設定ファイルは再読み込みする事がある
2021/02/08(月) 20:10:14.07ID:Ar0nSnLQ
>>412
IOに比べたらカスみたいなもんだからどうでもいい
実際遅かったら直せばよい
2021/02/08(月) 20:50:16.85ID:wJ3JIqDy
推奨NGワード: Ruby
2021/02/08(月) 21:18:46.00
>>414
なるほどありがとうございます
とりあえずはまとめられる処理はできる限り一つにまとめてみます
417404
垢版 |
2021/02/08(月) 21:40:53.51ID:TgcbDI6H
正解なのかはわかりませんが、なんとか期待通りの動きをするようになりました。
元々のコード:ttp://codepad.org/RgfCqXLD
変更後:ttp://codepad.org/C9YTzwaU

スイッチがONになったら反応、OFFでもう1つのアクション。
ついでにキャンセルもできるようにしようとするとフラグを2つ立てないとうまくいかなかったので、無駄に長くなってしまった気がします。
もしお暇でしたらアドバイス貰えれば幸いです。
2021/02/08(月) 21:44:11.22ID:XWqxRkjb
>>403
悪いがオリジナルは既に消えている。
が、どういうソート順なのか調べた人がいた。

それの紹介記事は残っていた
https://atsushieno.hatenadiary.org/entry/20050704/p2

webアーカイブに残っているかなぁ?
2021/02/08(月) 22:22:53.64ID:XWqxRkjb
>>418
アーカイブされていた
https://web.archive.org/web/19990224184613/http://www.asahi-net.or.jp/~ez3k-msym/comp/acccoll.htm
420デフォルトの名無しさん
垢版 |
2021/02/08(月) 23:57:12.05ID:qlvhc88X
親切な方誰か教えてください。
Python始めたいんだけど、どのバージョンをダウンロードしたらいいんでしょうか?
勉強用に買った本には3.6.Xをダウンロードしろと書いてあるんだけど、どうせ始めるなら最新の3.9から始めるのがいいんでしょうか?
2021/02/09(火) 00:03:22.35ID:Vys7ayWD
3.6で始めて欲しい機能が最新版にしかなかったら
その時移行する
2021/02/09(火) 00:05:25.90ID:9lYAN9ot
仮想環境があるから正直どうでもよい
423デフォルトの名無しさん
垢版 |
2021/02/09(火) 00:08:54.47ID:gY4wTt7u
>>421 422
ありがとう。とりあえず3.6で初めてみます
424デフォルトの名無しさん
垢版 |
2021/02/09(火) 00:33:28.54ID:D2eLzUKh
3.9でいいよ
・・・と言いたいが外部のライブラリが対応できていないものもまだ多いから3.8を勧める
3.6にあってそれ以降無くなった機能あったっけな?
2021/02/09(火) 01:08:10.84ID:WN7fm/D8
3.8だと思うように動作しないライブラリあったから3.6に戻した
それ以来,ずっと3.6
2021/02/09(火) 01:23:34.91ID:iwKT59GY
3を指定すると3.7.8か3.7.9あたりになるのが多い気がするからその辺が互換的にもよさそう
2021/02/09(火) 08:41:41.04ID:ArPH6UCx
>>418-419
読んでたら頭痛くなってきた…
これMSがちゃんと仕様公開しなきゃ駄目だよなぁ…
2021/02/09(火) 09:16:09.94ID:oB9H/ghx
教えていただきたいのですが、
tkinterでプログラムのスタートとストップボタンを作ったのですが、処理中は画面がフリーズしてしまいます。
tkinterは非同期モジュールらしく、
これを他のGUIモジュールに変えるとフリーズしなくなりますでしょか?
2021/02/09(火) 09:21:39.36ID:LMsNGPvT
非同期なのにフリーズするっておかしくね?
2021/02/09(火) 10:20:06.37ID:fLSeggtA
>>428
コード見てみないとなんともだけど
非同期のコードかかずにwhileで回してるだけになってるとか
2021/02/09(火) 11:42:31.22ID:oB9H/ghx
すみません、非同期とかよくわかっていなかったです。
ボタンが全く押せず、ブレークでwhile文から抜けるしかない状況です

import tkinter as tk
import tkinter.messagebox
import time

def start():
global stop_flag
  timer_time = time.time()
while stop_flag == False:
txt.insert(tkinter.END,str(time.time()-timer_time))
if time.time()-timer_time >5:
txt.insert(tkinter.END,str(time.time()-timer_time))
break

def stop():
global stop_flag
stop_flag=True

stop_flag = False
root = tk.Tk()
root.geometry("200x150+30+600")
end_button = tk.Button(root, text = "START", command =start)
end_button.place(x = 5, y = 10)
end_button = tk.Button(root, text = "STOP", command =stop)
end_button.place(x = 5, y = 40)
txt = tk.Entry(width=20)
txt.insert(tk.END,"0")
txt.place(x = 5, y = 70)

root.mainloop()
432デフォルトの名無しさん
垢版 |
2021/02/09(火) 11:59:05.97ID:ngdRC2S+
>>417
まずはこんな感じのswitch文を使うような状態遷移にした方がいいんじゃね
pythonにはswitchは無いからif-elseでやるしかないけど

不変でコンパクトならswitch〜caseで状態遷移したっていい|Marupeke-IKD|note
https://note.com/marupeke296/n/n62c1c4643931

11.リアルタイム制御とステートマシン
https://www2.denshi.numazu-ct.ac.jp/lego/NXT/nxtOSEK/2_kiso/realtime.html
2021/02/09(火) 13:05:59.09ID:YRe7Jw73
pandasで列aと列bの各値同士の計算結果を同じデータフレームに代入しようと思い

df = pd.DataFrame([[1,2,3],[4,5,6],[7,8,9]], columns=['a','b','c'])
df['c-a'] = df[['a','c']].diff(axis=1)['c']

と、してみましたが['c']が納得いきません
列ラベル名があるときも[:1]みたいに取り出したいのですがエラーでした
2021/02/09(火) 13:12:01.53ID:YRe7Jw73
訂正 >df['c-a'] = df[['a','c']].diff(axis=1)['c']
df['c-a'] = df[['c','a']].diff(axis=1)['a']
でした
この['c','a']の順は保証されるのかも気になります
2021/02/09(火) 13:19:02.92ID:Vys7ayWD
>>431
sleep(0.1)
txt.update()
2021/02/09(火) 13:20:02.81ID:YRe7Jw73
df['c-a'] = df[['c','a']].diff(axis=1).iloc[:,-1]

適当にやっていたらこれでいけました・・ >>433,434
2021/02/09(火) 13:43:29.24ID:3rwMtM14
>>431
start関数が5秒経つまでループしてて戻らないから
Pythonに限らずGUIの場合UIを動作させるにはメインスレッドを独り占めしちゃだめなのよ
>>435みたいなやり方もあるけど
sleepすらしない単純なループでの待ちは無駄にCPU使用率が上がるだけなので避ける
時間経過はタイマーイベントを使う
時間がかかる処理は別スレッドにする
という方向で考えた方がいいよ
2021/02/09(火) 15:54:12.06ID:oB9H/ghx
>>435さん、>>437さん
ありがとうございます。
タイマーイベント?を調べてみます
439デフォルトの名無しさん
垢版 |
2021/02/09(火) 19:52:16.41ID:F09oemYA
tesseractの他にocrのライブラリってありますか?
教えて下さい。よろしくお願いします。
2021/02/09(火) 20:42:00.18ID:A4TUXs3r
>>432
ありがとうございます。もうちょっとちゃんと勉強してみます。
2021/02/09(火) 22:37:06.14ID:48/GVgda
Pathlibで特定のフォルダ以下のファイルを全てglobして
全てのファイルに対して特定の処理をし
その後別のフォルダにディレクトリ構造を維持しつつ保存していきたいです

フォルダ構造を維持しつつ保存するために
hoge_dir - base_dir みたいなものをしてPathの差分だけを取得したいのですが、そういった関数は無いのでしょうか?
2021/02/09(火) 22:48:35.91ID:48/GVgda
Path(os.path.relpath)で出来ました
443デフォルトの名無しさん
垢版 |
2021/02/10(水) 00:20:56.79ID:3asw//Zv
relative_to()
ドキュメント、読もう!
2021/02/10(水) 07:56:31.78ID:lV7BodTW
イテレータを使わなければならない状況がきてようやく仕組みがちょっと理解できた
今までfor inで回せばほとんどのことに対処できてたので、どこで使うんそれって感じやったけど
やっぱり必要になって使うべき場面がこないと覚わらんね
2021/02/10(水) 08:02:53.10ID:0JH6aNHf
使わなくても実装は出来るけどな。
2021/02/10(水) 11:18:29.15ID:4pogzqlY
PySide2のQDialogをESCで閉じさせない方法ってありますかね

調べても出てこない
2021/02/10(水) 12:24:44.38ID:QctJSG9o
>>444
イテレータイマイチ使うシーンが想像できんわ
448デフォルトの名無しさん
垢版 |
2021/02/10(水) 13:05:03.29ID:3asw//Zv
頭から順に処理するならイテレーター
値は取り出すまで評価されない
リストは生成時に全要素が評価、展開されるから、長いとメモリを圧迫する
2021/02/10(水) 13:27:54.75ID:2MYUAlGB
ジェネレータイテレーターな
2021/02/10(水) 13:44:33.50ID:k3XYYQgl
>>447
for文使ってればイテレータ使ってる
rangeでもlisyでもstrでも同じようにfor文で回せるのはイテレータのおかげ
2021/02/10(水) 18:42:03.34ID:li7FLtWZ
扱う分野で必要なもの全然違うしね
必要になったら学べば良い
■ このスレッドは過去ログ倉庫に格納されています