Pythonのお勉強 Part68 at TECH
[2ch|▼Menu]
[前50を表示]
400:デフォルトの名無しさん
22/10/22 04:24:24.02 +A4lsW440.net
ニューラルネットワークはともかく、他の言語出来たらPythonだって出来るでしょ。NumPyとかPyTorchだけがPythonじゃないし。なんか知らんYouTuberを根拠にするとか頭おかしすぎる 正直BASICみたいなもんだろ、

401:デフォルトの名無しさん
22/10/22 04:31:36.51 x/c/WoEY0.net
PythonはCとかで作れられたソフトのラッパーにすぎないだろ
元の操作が難しくても初心者向けにラッピングしてあるんだろ
BASICみたいというのはその面あるかと
当時だとアセンブラのラッパーといえるだろうが

402:デフォルトの名無しさん
22/10/22 04:40:27.23 x/c/WoEY0.net
Pythonで記述法が独特だとおもってたけど
いま高級言語の FORTRAN BASICを調べたらまあまあ似てた

403:デフォルトの名無しさん
22/10/22 05:47:55.19 7jLTm2VBM.net
とにかく手軽で便利、マルチプラットフォームで動く高機能なスクリプト言語
一般人から研究者まで、エンジニアじゃなくても手軽に扱えるシェアNo.1のプログラミング言語
さあ今すぐPythonを始めよう!

404:デフォルトの名無しさん
22/10/22 06:53:31.27 J46viSc60.net
プログラム全く触ったことなくても独学でもいける?

405:デフォルトの名無しさん
22/10/22 07:35:37.88 7AfcIHJs0.net
やる気次第でしょ
インフラ屋さんだけどPythonとGoがあれば仕事が楽になる

406:デフォルトの名無しさん
22/10/22 14:21:00.87 8gOeqRywp.net
生まれて初めてカキコします。
pythonでエクセル内の
指定したセル範囲を画像として保存することはできるのでしょうか?
openyxl等の使い方を見ましたが該当する機能が見つからず。。。

407:デフォルトの名無しさん
22/10/22 14:33:36.41 RBHYYj24a.net
カキコって何歳だよ
画像は難しそうだよな
ブラウザ経由ならまだ割となんとかなるかもしれんけど

408:デフォルトの名無しさん
22/10/22 14:43:30.59 N7+wBa/e0.net
URLリンク(support.microsoft.com)
うーん

409:デフォルトの名無しさん
22/10/22 14:58:25.99 5YUu7WUo0.net
xlwingsでExcel操作してセルを表示
URLリンク(learn.microsoft.com)
もしこの操作ができるならpillowのImageGrab.grabclipboardで画像化
できそうにないなら同じくImageGrab.grabでスクショ

410:デフォルトの名無しさん
22/10/22 15:10:03.03 /+WXYBmxM.net
>>406
5chははじめてか、力抜けよ
画像は難しい(意訳: 無理とは言ってないが見当がつかない)

411:デフォルトの名無しさん
22/10/22 18:12:09.05 r8ZBR+82H.net
>>404
そんなことを逝っていたらいつまでたっても創められない
なんでもいいからすぐにやれ!

412:デフォルトの名無しさん
22/10/22 18:42:20.42 J46viSc60.net
>>411
わかった、明日本屋さん行ってくる。

413:デフォルトの名無しさん
22/10/22 18:44:23.56 OES5lhv+a.net
>>404
無理
そういう質問してくるやつは全員使い物にならなかった

414:デフォルトの名無しさん
22/10/22 19:41:53.56 +A4lsW440.net
独学で行ける奴は独学で行けるかどうか質問する前に独学できる範囲は独学しちゃうからなあ。
その質問が出る人と出ない人の違いが不思議だよね。
子供の頃に近くに誰も教えてくれないジャンルで何かを自分で調べてやったかどうかの違いなのかなあ。

415:デフォルトの名無しさん
22/10/22 19:55:08.06 YnOyl9oPM.net
全くのプログラミング初心者はCとJavaをやってからPythonやるのおススメ
するとCでポインタに挫折し、Javaでオブジェクト指向に挫折するはず
次にPythonをやると大幅に難易度が下がり感激して習得が進む

416:デフォルトの名無しさん
22/10/22 20:14:23.22 TcV0m7it0.net
独学ってなんだろうなとは思う
今やネット使えば相互で学びを得られるわけだし

417:デフォルトの名無しさん
22/10/22 20:15:49.62 OES5lhv+a.net
できるやつはそんなくだらない質問してる間に書いてるからな
よほど頭が良いやつを除けばプログラミングなんてスポーツに近い
ある程度書きまくって理解するという面がかなりある

418:431
22/10/22 20:35:33.98 kATB1i3DH.net
>>412
素直でよろしい
わからないことがあったらすぐにここで聞くがよい、少なくとも私は答えてあげよう

419:デフォルトの名無しさん
22/10/22 20:36:23.36 F0QzgmDAM.net
変なトレーナーだと上達も遅いし悪い癖がつく

420:デフォルトの名無しさん
22/10/22 21:47:35.31 cKHN2pKRH.net


421:デフォルトの名無しさん
22/10/22 23:09:50.86 SZlNO/Fu0.net
PythonのpyautoguiでDMMGAMEPLAYERのクリック操作ができません
多分他にもできないソフトや操作がある気がします
できるようにする方法をご存知の方いませんか?

422:デフォルトの名無しさん
22/10/22 23:15:54.82 r1O0tjlF0.net
管理者権限では

423:デフォルトの名無しさん
22/10/22 23:23:38.12 SZlNO/Fu0.net
管理者権限でPythonやVSCodeを動作させるというのはやってみましたがダメでした
それとは違うものですか?

424:デフォルトの名無しさん
22/10/23 00:17:15.41 a/Rc5ERJM.net
クリックスピードが速すぎて認識しないことあったけどそれとは違うかな

425:デフォルトの名無しさん
22/10/23 05:29:58.37 LnniM1YV0.net
循環参照とグローバル変数の解放忘れは
どうにもならずでよい?

426:デフォルトの名無しさん
22/10/23 07:56:50.73 YjL8eIdN0.net
>>421
それなー制御レイヤでガードがかかってて出来ないんだよ
仮想環境でプレイヤー動かして外からマウス操作するとできる
ahkならうまくいくと昔見た気がする

427:デフォルトの名無しさん
22/10/23 08:34:16.23 a/Rc5ERJM.net
昔MMOでマクロ動かしてたときにjoytokeyは通るのにUWSCが通らないのは何でだと思ったらJoytokeyは使ってるAPIが古かったのを思い出した

428:デフォルトの名無しさん
22/10/23 20:18:15.84 VvU+DrMM0.net
GUIは他で作って呼べばいいやとか思ってたけど
触ってみたら楽しくなってきちゃった…

429:デフォルトの名無しさん
22/10/23 20:40:08.90 YdoHOOqzM.net
自分で使うのは勝手だが、他人に無理に使わせようとして面倒をかけないようにしろよ

430:デフォルトの名無しさん
22/10/23 21:21:44.61 E8ProAkZ0.net
パイソンって何のOSで作って、何のOSで動かして
どんなハードウェア使ってるのかイメージわかない

431:デフォルトの名無しさん
22/10/23 21:29:22.91 QUHPaesz0.net
>>430
パイソン以外なら分かるのか?

432:デフォルトの名無しさん
22/10/23 22:09:00.29 HOBBKeJ+a.net
>>430
え?

433:デフォルトの名無しさん
22/10/23 22:20:33.87 PSjFlE960.net
昔はアプリ内スクリプティングによく使われてたし
そこまでOS依存ないよね

434:デフォルトの名無しさん
22/10/23 22:22:13.84 Gerqh3Hc0.net
今は何が使われてるの?

435:デフォルトの名無しさん
22/10/23 22:22:47.20 NZM9O6ur0.net
>>430
何のOSでと言ってる時点で適性無さすぎ

436:デフォルトの名無しさん
22/10/23 22:40:47.26 ryZHmhMT0.net
渋谷のOSは人気があったんだけど、なくなってしまいました

437:デフォルトの名無しさん
22/10/23 23:07:36.81 ukbFQOFRM.net
「オーエス!オーエス!」
謎の掛け声の語源は?

438:デフォルトの名無しさん
22/10/23 23:21:29.90 EIV6aNFQM.net
>>435
いやーこの辺の理解は難しいよ
俺はPythonがC言語で作られていることを知っているが
C言語が何で作られているかは知らない

439:デフォルトの名無しさん
22/10/24 00:31:12.46 GUF0AyIv0.net
>>438
大本の大本を辿ればハンドアセンブルに行き着く
始めは機能が限定されたCコンパイラを作り、だんだん必要な機能全てが揃ったCコンパイラを作る

440:デフォルトの名無しさん
22/10/24 01:02:39.86 aNKyy4xv0.net
最初のは計算ごとに配線を替えてたぞ

441:デフォルトの名無しさん
22/10/24 01:09:51.15 m3/1dAn60.net
>>438
え?
Cコンパイラ使ったことあらず?

442:デフォルトの名無しさん
22/10/24 02:58:26.65 wO6abJhfM.net
>>441
Cコンパイラが何でできているか知っているのは
コンパイラを作った人だけだからね
君は作ったことあるのかい

443:デフォルトの名無しさん
22/10/24 03:19:34.54 m3/1dAn60.net
>>442
gcc知らず?
clang知らず?
cl知らず?
何でできてるかって実装言語?
gccならCだよ
clangはC++
clは詳細はわからんがC/C++でしょう

444:デフォルトの名無しさん
22/10/24 05:15:28.86 p6w8R1yaM.net
キーワード引数の違いで引数cがあるときだけ下側を呼ぶような関数オーバーロードってできないんですかね
def myfunc(a:int,b:int)
def myfunc(a:int,b:int,c:int)

445:ハノン
22/10/24 06:55:32.96 +/V2/OmRH.net
>>443
gcc はカバのダンスの調教に疲れて c++ になったかと

446:デフォルトの名無しさん
22/10/24 07:32:37.40 FaCSJwQ/0.net
ラズパイを動かすための言語って思ってる人もいるかもしれない

447:デフォルトの名無しさん
22/10/24 07:46:28.41 LLDppSf/0.net
>>443
それはそう言う例があるってだけの話
テキストを読んでバイナリを出力できる言語なら(面倒かどうかは別にして)コンパイラを作れるだろ

448:デフォルトの名無しさん
22/10/24 08:02:02.76 m3/1dAn60.net
>>447
例ってなんだよw

449:デフォルトの名無しさん
22/10/24 08:45:07.46 ps8GOOL70.net
はじめにCありき

450:デフォルトの名無しさん
22/10/24 08:48:17.61 LLDppSf/0.net
>>448
念の為に聞いておくけどC言語はC/C+でないと作れないとか思ってないよね?

451:デフォルトの名無しさん
22/10/24 12:57:00.37 m3/1dAn60.net
>>450
何を言ってるんだ?
支離滅裂だぞ
Cコンパイラの作り方を知りたいのか?
字句解析、構文解析、意味解析、コード生成、最適化とかを知りたいのか?
コンパイラの教科書でも読めば?
ちな俺は大学でその辺やってたから教えても良いよ

452:デフォルトの名無しさん
22/10/24 13:06:44.24 m3/1dAn60.net
Cコンパイラ作りたいなら湯淺太一先生のコンパイラの教科書読みな
この本は昔大学で使っててアセンブリ言語のコード生成までちゃんと書いてある
著者はLisp処理系とか作ってた人
この本読めばRustがどういうコード生成してるかもわかる

453:デフォルトの名無しさん
22/10/24 13:14:19.77 LLDppSf/0.net
>>451-452
御託はいいから>>450にyes/noで答えろよ

454:デフォルトの名無しさん
22/10/24 13:15:55.81 rCA25jH/a.net
>>453
なんでCでしか作れないんだよw
おちょくるのもいい加減にしろ

455:デフォルトの名無しさん
22/10/24 13:17:22.92 rCA25jH/a.net
というかマジでわかってない?
コンパイラとリンカとか知らんのかな
それなら謝るけど

456:デフォルトの名無しさん
22/10/24 13:17:23.04 oX2BqG4d0.net
どーでもいいw
すれち

457:デフォルトの名無しさん
22/10/24 13:19:20.96 rCA25jH/a.net
あまりに前提知識が無さすぎるが故に煽りっぽくなってしまったのなら俺の責任だからそこは謝るよ

458:デフォルトの名無しさん
22/10/24 13:21:10.71 rCA25jH/a.net
どうでもよくないよ
コンパイラのこと知らずにRust書いてるならかなり怖い

459:デフォルトの名無しさん
22/10/24 13:23:06.14 oX2BqG4d0.net
PythonのスレでRust書いてる前提で話すほうが怖いわw

460:デフォルトの名無しさん
22/10/24 13:35:13.05 rCA25jH/a.net
>>459
ん?あ、すまんw
リアルに勘違いしてたw
アスペ出たなあ

461:デフォルトの名無しさん
22/10/24 13:35:23.26 8nSTkhtC0.net
ほとんどのスレが閑古鳥だからかスレチでも書きたい欲求が上回るんだろうね

462:デフォルトの名無しさん
22/10/24 13:40:32.83 rCA25jH/a.net
ただpythonでC/C++拡張を書く場合には普通に有効だし
知っていて損はないと思うけどね
スレ違いスマソ

463:デフォルトの名無しさん
22/10/24 13:45:13.84 LLDppSf/0.net
>>454
お前には聞いてないからいちいち絡んでくるなよ...

464:デフォルトの名無しさん
22/10/24 14:40:45.31 Ifzcx8SRd.net
アウアウウー Sa45-sGwS、ワッチョイ 81f0-sGwS
は同一人物でしょ
スレ違いだけど、こっちの流れのほうがわからん
462の発言に対して463が否定した
その後の467が???
>>442 テテンテンテン MMe6-zh4g
> Cコンパイラが何でできているか知っているのは
> コンパイラを作った人だけ
>>443 ワッチョイ 81f0-sGwS
> gccならCだよ
> clangはC++
>>447 ワッチョイ 8201-yYWu
> それはそう言う例があるってだけの話
> テキストを読んでバイナリを出力できる言語なら(面倒かどうかは別にして)コンパイラを作れるだろ

465:デフォルトの名無しさん
22/10/24 14:57:03.94 LLDppSf/0.net
>>464
だからC言語(のコンパイラやインタプリタ)はC/C++言語でなくても作れるって話
>>443 は単なる一例
もちろんPythonでも同様

466:デフォルトの名無しさん
22/10/24 15:22:20.03 2pr4kIm+d.net
>>465
一例ってことは、
462に対して例をあげて否定した463を肯定しつつ、新たな話題で絡んだってことよね
463以前でもそれ以降でも「C/C++以外では作れない」なんて言ってないのに

467:デフォルトの名無しさん
22/10/24 15:36:46.66 LLDppSf/0.net
>>466
どうやったそんなアホな解釈になるんだよw
462 はコンパイラ一般の話を書いてるのにそれに対して個々のコンパイラの例を挙げても否定にも何にもなってないって話だぞ

468:デフォルトの名無しさん
22/10/24 16:17:10.49 ZTzctXE7d.net
>>467
>>442 コンパイラ一般の話と
>>443 いくつか例外があるぞと
>>447 いくつか例外をあげても意味ないぞ
こういう流れだったか
> テキストを読んでバイナリを出力できる言語なら(面倒かどうかは別にして)コンパイラを作れるだろ
んで、2行目のこれは「どこに」かかってるんだ?

469:デフォルトの名無しさん
22/10/24 16:37:51.01 LLDppSf/0.net
>>468
頼むから書いてもない例外とかいきなり出してこないでくれ
> んで、2行目のこれは「どこに」かかってるんだ?
いくつかの例以外のものを作れるだろって話

470:デフォルトの名無しさん
22/10/24 17:06:30.10 /FISPYrld.net
例外 → 一般とは違う例
と読み替えてくれ
その作られている例と作れる話が繋がらなかったんだ
とりあえず流れは理解したわ
横槍すまんかった

471:デフォルトの名無しさん
22/10/24 17:39:36.14 LLDppSf/0.net
>>470
> 例外 → 一般とは違う例
> と読み替えてくれ
意味不明、487の一般の意味がわかってないだろ...
全般と書けばわかるかな?

472:デフォルトの名無しさん
22/10/24 17:44:48.33 aNKyy4xv0.net
しつこいと嫌われるぞ

473:デフォルトの名無しさん
22/10/24 18:01:08.06 neM6LaqeM.net
そもそもPythonもC言語で実装されているとは限らないしね。普通はCPython以外のことを考えなくていいと思うけど、今でもpypyとか使おうと思ったら考えなくちゃだしな(使ったことないのでよく知らないけど)

474:デフォルトの名無しさん
22/10/24 20:11:23.46 FaCSJwQ/0.net
c++で思い出したんだけどboost.pythonでndarrary渡したあとそのままndarrary操作してたら処理にアホほど時間がかかったわ
結局vectorに入れ替えて処理したあとpythonのリストに変換して戻したら早かった
今思えば最初から渡すのリストで良かったな
ndarray渡す利点なんかあるのかな?

475:デフォルトの名無しさん
22/10/24 20:35:32.52 Uzj8AQ880.net
>>474
コピーを減らせるのが利点だけど、アクセス時のチェック等で遅くなったら意味ないのでポインタを使う。
コピーをするにしても、ndarrayのデータは連続してるのでリストより速くなると思う。

476:デフォルトの名無しさん
22/10/24 20:57:46.29 1daaREig0.net
初めてvsコードに触ったんだが
pyhtonのバージョンはどうやってわかるんですかねー
教えて偉い人!

477:デフォルトの名無しさん
22/10/24 20:57:59.34 SgELnO580.net
flex とか bison は古典芸能ですか?

478:デフォルトの名無しさん
22/10/24 21:01:12.11 1daaREig0.net
September 2022 (version 1.72)
これのことかな?
すまん。よくわからんw

479:デフォルトの名無しさん
22/10/24 21:07:00.51 FaCSJwQ/0.net
>>475
データが連続してるからリストより早いってのはありそう
昔のコード発掘できたら試してみるわ

480:デフォルトの名無しさん
22/10/24 21:58:07.47 OQANp5iI0.net
>>477
今はPEGベースが流行りだね。

481:デフォルトの名無しさん
22/10/24 22:16:28.14 dNNjxJBr0.net
>>476
右下に表示されてる
そこクリックしたらインタープリターを選択っていうのがでてくる

482:デフォルトの名無しさん
22/10/24 22:38:27.05 1daaREig0.net
>>481
右下だとこうなります。
imgur.com/a/6CZm37Y
なかなかに初心者には難しいです。

483:デフォルトの名無しさん
22/10/24 22:44:52.56 1daaREig0.net
あ!できたっぽいw
python3.9.0ってでてきた。
これかな?

484:デフォルトの名無しさん
22/10/26 11:41:31.93 IsZcNO330.net
半島系のクズは皆殺しでOK
日本に来て強姦と窃盗を繰り返す極悪非道の朝鮮人

485:デフォルトの名無しさん
22/10/26 15:13:34.34 /Jbhrlo+a.net
>>477
RubyやPHPで使われてるから普通に現役だよ
手書きだとCFGから左再帰の除去だとか
先読みトークン数の問題とかすげー面倒だから
初心者はまずbison使えば良いんじゃないか

486:デフォルトの名無しさん
22/10/26 22:25:06.76 HUwfFIwe0.net
質問です
この引数は普通関数と可変引数ですが
この関数を簡単にする方法ありますか?
5個以上の場合も全部記述するしかないですか?

def connect(F, *x) :
l = len(x)
if l==0 : F()
elif l==1 : F(x[0])
elif l==2 : F(x[0],x[1])
elif l==3 : F(x[0],x[1],x[2])
elif l==4 : F(x[0],x[1],x[2],x[3])

487:デフォルトの名無しさん
22/10/26 22:26:26.51 HUwfFIwe0.net
>>486
消費メモリと消費時間を計測するベンチマークの補助関数としてつかいたいのですが

488:デフォルトの名無しさん
22/10/26 22:39:31.86 Gwv5fEeF0.net
>>486
F(*x)

489:デフォルトの名無しさん
22/10/26 22:43:13.09 HUwfFIwe0.net
>>488
サンクス
F(x)で駄目だったですが
それでいいんですか

490:デフォルトの名無しさん
22/10/26 22:48:38.63 1pgEFdE40.net
python3.11どうですか

491:デフォルトの名無しさん
22/10/26 23:22:36.27 iEeVk++I0.net
>>489
4.8.5. 引数リストのアンパック
URLリンク(docs.python.org)

492:デフォルトの名無しさん
22/10/26 23:24:41.91 iEeVk++I0.net
ていうかFって

493:デフォルトの名無しさん
22/10/26 23:32:56.52 3tunJph20.net
すべてが…

494:デフォルトの名無しさん
22/10/27 00:18:45.07 F/o6kN8OM.net
韓国人は強姦魔
処刑すべし!

495:デフォルトの名無しさん
22/10/27 00:19:10.85 H28rwqsV0.net
>>488
ウホッありがとな※

496:デフォルトの名無しさん
22/10/27 22:55:12.85 5KytWWZZ.net
FastAPI気軽に使えて良いわ
自動で/docs作られるからUI作んの完全に後回しにできる
ついでにSQLModelも、と思ったけどrelationship周りがエラー出たり出なかったりおかしかったが原因がわかった
SQLAlchemyのバージョンが最新のものだrelationshipが効かない、1.4.35だといける・・
あとCRUDの並行処理は無理ぽいかも。
これらさえなければ個人でさくっとお気軽にウェブアプリ作るフレームワークとして完璧なんだが

497:デフォルトの名無しさん
22/10/27 23:14:24.71 9zZ/mg550.net
tortoiseはどうですか

498:デフォルトの名無しさん
22/10/28 00:04:09.43 aYQ1muJl0.net
ちょんだらけw

499:デフォルトの名無しさん
22/10/28 01:57:08.28 dcIx+1f70.net
>>496
URLリンク(fastapi.tiangolo.com)
ユーザじゃないけどこれ読んだかぎりセッションを自前で管理してないからじゃ
仕組みは用意してないと書いてる

500:デフォルトの名無しさん
22/10/28 08:27:01.13 aYQ1muJl0.net
ちょんてさ、半島に帰れば差別されないのに絶対に半島に帰らないよね?
それは、日本が平和で豊かで、
日本人はみな親切だからです。
なのにちょんは差別されてると妄想をいだいて
日本人女性を強姦しまくってる!
ちょんは皆殺しにするしかない!

501:デフォルトの名無しさん
22/10/28 08:47:10.38 aYQ1muJl0.net
半島に絶対帰らないちょんw
日本人は犯罪者に親切し過ぎる!

502:デフォルトの名無しさん
22/10/28 09:16:34.07 lPPjHZ9qa.net
発作か

503:デフォルトの名無しさん
22/10/28 10:42:02.56 6fPFyEs10.net
統一教会が追い詰められてきたから焦ってるんだろ

504:デフォルトの名無しさん
22/10/30 03:06:48.95 9F5gJDkR0.net
Python初心者ですが新事実を発見しました
クラスのメンバ変数はデフォルト値が設定してあっても
コンスタントラクタで初期化しないかぎり、別に生成したクラスobjと共有されてるようです
リストとか特定の変数限定かもしれないですが

505:デフォルトの名無しさん
22/10/30 03:14:13.07 9F5gJDkR0.net
具体的にこれですが

class A :
L = []
def __init__(self): pass
class X :
L = []
def __init__(self): self.L = []
a = A()
a.L.append(7)
b = A()
print(b.L) # 新規生成なのに値が入ってる
a = X()
a.L.append(7)
b = X()
print(b.L) # 正常
print(a.L) # 正常

506:デフォルトの名無しさん
22/10/30 04:02:03.41 2IVXofav0.net
それはメンバ変数でなくてクラス変数だからだよ

507:デフォルトの名無しさん
22/10/30 04:51:48.91 9F5gJDkR0.net
そういうことか
Pythonでクラス変数とインスタンス変数を取り違えてハマった
URLリンク(qiita.com)

508:デフォルトの名無しさん
22/10/30 05:37:36.99 q24pCrd50.net
韓国人は神さま!
全財産を寄進せよ!
マンセー!

509:デフォルトの名無しさん
22/10/30 07:07:55.87 PYm3clPCM.net
>>505
pythonから入った者には
そらそうだろとしか思わないw
たぶんオレは他言語扱えないな

510:デフォルトの名無しさん
22/10/30 07:49:05.29 2N6ePwSn0.net
他の言語でも同等の機能を持つものはあるけどpythonはどちらの変数なのかを明示しないから混乱し易い

511:デフォルトの名無しさん
22/10/30 07:56:11.62 WAC/PohS0.net
どっちも同じに見えるのはその方が便利だと思ったんだろうか
必要なら使う側で見分け付くように名前を付ければいいという柔らか運用

512:デフォルトの名無しさん
22/10/30 08:30:50.67 2N6ePwSn0.net
>>511
> どっちも同じに見えるのはその方が便利だと思ったんだろうか
変数宣言をしないって言うポリシーなので最初に使った場所で決めるようにした/せざるを得なかったじゃないかなって思ってる
> 必要なら使う側で見分け付くように名前を付ければいいという柔らか運用
使う側はそれでいいけど宣言する人が勘違いしてたら意味ないわけで...

513:デフォルトの名無しさん
22/10/30 08:44:46.72 YV/Jz1Xt0.net
つい最近同じように、クラスを覚えようと
「python class」でググった一番上のサイトにやられた
URLリンク(camp.trainocate.co.jp)
クラス変数もインスタンス変数もめちゃくちゃだった

514:デフォルトの名無しさん
22/10/30 08:51:51.63 KYgyTmU4M.net
クラス変数をself.でアクセスしない運用にすれば取り敢えず解決

515:デフォルトの名無しさん
22/10/30 08:58:13.36 ejVjSPjsH.net
self.__class__.foo
self.FOO

516:デフォルトの名無しさん
22/10/30 11:40:59.42 0ss8sts10.net
質問です。
requestsを使って画像をダウンロードする時、
一定のサイズ以下の物をダウンロードしないようにしたいです。
どのようにするといいでしょう?

517:デフォルトの名無しさん
22/10/30 12:00:39.70 Ofy0PT2CM.net
>>516
どうすればいいって
自分で質問して自分で答え言ってるじゃん

518:デフォルトの名無しさん
22/10/30 12:02:51.23 o3zlfJHfa.net
streamを有効にして、ちびちびと確認しつつ取得

519:デフォルトの名無しさん
22/10/30 12:03:47.95 o3zlfJHfa.net
事前にわかってりゃその時点で止めればいいけどね

520:デフォルトの名無しさん
22/10/30 12:10:52.74 0ss8sts10.net
>>519
つまり一度ダウンロードしてからcv2等でサイズを確認し、
OKならリネームして保存、NOなら削除
という感じでしょうか?

521:デフォルトの名無しさん
22/10/30 12:28:08.24 WAC/PohS0.net
そうでないことは質問者なんだから判ってるだろうに

522:デフォルトの名無しさん
22/10/30 12:37:02.73 0WCgMjCVM.net
requests ファイルサイズってググれば一番上に出てくる

523:デフォルトの名無しさん
22/10/30 12:37:56.59 o3zlfJHfa.net
サイズって、実データのサイズじゃなくて画像のピクセル数とか色のサイズってこと?

524:デフォルトの名無しさん
22/10/30 12:41:23.93 ejVjSPjsH.net
画像のサイズっていう文脈なら俺はim.sizeとかを想定するなー
request文脈なら容量のサイズだけどな!

525:デフォルトの名無しさん
22/10/30 12:41:44.93 0ss8sts10.net
すいません。
質問の仕方がまずかったです。
画像の横幅とか縦幅の方のサイズのことです。
横幅350px以下の画像をダウンロードする時に除外したいのです。

526:デフォルトの名無しさん
22/10/30 12:46:32.71 o3zlfJHfa.net
まあフォーマットによっては頭だけ読めばわかるけど…

527:デフォルトの名無しさん
22/10/30 12:59:12.74 WAC/PohS0.net
元々はサイズなんか判らん、というプロトコルがあって、
それでは不便だからと建て増しで追加してるから、
判る場合も判らない場合もあるんだよな
判ったとしても嘘をついている場合もある

528:デフォルトの名無しさん
22/10/30 13:09:28.80 0ss8sts10.net
>>527
なるほど
そんな事情があるとは知りませんでした。
オンライン上でサイズを調べるのは無理そうなので、
一度ダウンロードしてから仕分けるようにします。
ご迷惑をおかけしてしまいすいません。
ありがとうございました。

529:デフォルトの名無しさん
22/10/30 13:18:51.61 XddGgynb0.net
パッとヘッダ見た感じjpegなら0xA3にWORD値で高さ、0xA5に幅、どちらもリトルエンディアン
pngなら0x10にDWORD値で高さ、0x14に幅、リトルエンディアン
って感じだね
上手くヘッダの一部だけダウンロードして画像サイズを得る関数を作ればトラフィック軽減になるかも?

530:デフォルトの名無しさん
22/10/30 14:39:50.92 XddGgynb0.net
暇だから作ってみたおじさん
URLリンク(ideone.com)

531:デフォルトの名無しさん
22/10/30 15:26:12.39 VC4EQr6u.net
デザインパターンのSingletonパターンって必要ですかね・・
結局なんらかのカウンターで一元管理することになりませんか・・

532:デフォルトの名無しさん
22/10/30 15:49:28.81 Hd1qfqu50.net
バイトコードってヒープ領域に格納されてvmに渡されるのですか?

533:デフォルトの名無しさん
22/10/30 16:53:19.41 pkba5bNo0.net
>>529
ビッグエンディアンね
jpegは画像サイズが含まれるセグメントの位置が固定ではないので決め打ちは危険

534:デフォルトの名無しさん
22/10/30 16:56:31.04 40a1nlTva.net
>>531
使わないほうが良いものである

535:デフォルトの名無しさん
22/10/30 17:24:05.37 yaCBWxQaa.net
>>532
そうです
内部的にはPyCodeObjectという形で実装されています

536:デフォルトの名無しさん
22/10/30 17:53:38.94 Hd1qfqu50.net
>>535
ありがとうございます!

537:デフォルトの名無しさん
22/10/30 18:13:35.82 CDidbViTM.net
>>504
他言語触ってて
先に型ヒントつけて宣言しとこで同じ間違いしたわ

538:デフォルトの名無しさん
22/10/30 19:10:27.11 XddGgynb0.net
>>533
本当だ逆に覚えてた恥ずかしい
JPEGはサイズ前の5byteが共通っぽかったから>>530ではFF C0 00 11 08を検索するようにしてみたけどFF C0後の3byteは可変っぽいね
そもそも1KB以内にサイズ情報があるかも分からないのか

539:デフォルトの名無しさん
22/10/30 23:05:03.89 q24pCrd50.net
ここは朝鮮人のスレ
チョッパリはくるな!

540:デフォルトの名無しさん
22/10/30 23:53:08.68 vrlOFY0H0.net
発作か

541:デフォルトの名無しさん
22/10/31 14:05:35.97 j6J+ogvNM.net
>>531
なんないよ

542:デフォルトの名無しさん
22/11/01 02:33:37.39 mmiO/WJW0.net
不特定の文字・数字・記号、またそれらの組み合わせを意味する表記で記入する方法を教えて下さい
[123456aaaあ井う~〜」
↑みたいなのがあったとして、数字や文字は毎回変わる、場合によっては桁数が変わったりもする
テキストファイル内で上記のパターンの文字列を見つけて、その前の位置で改行を入れるみたいなことをしたいです
イメージですが下記みたいに表して a に代入しておいて
[123456aaa文字] → [%%% ¥¥¥¥¥¥¥¥] or [%(桁数)¥(桁数)]
replace(a,”/n”+a) でテキストファイルを書き換えるようなことって可能ですか?

543:デフォルトの名無しさん
22/11/01 02:42:25.93 mmiO/WJW0.net
誤字 /n → \n

544:デフォルトの名無しさん
22/11/01 03:36:18.46 I1aopbaSM.net
なるほどわからん

545:デフォルトの名無しさん
22/11/01 08:16:26.34 xJk+jZok0.net
これは煽りではなく真面目なアドバイスなんだが、プログラミングより国語を勉強した方がいい
その言語能力だと難しいと思う

546:デフォルトの名無しさん
22/11/01 08:30:28.54 mmiO/WJW0.net
222tq2tq2tq269ああ%64agaoiwahaio.59gagagahai3a.t69a 5>22gahaiiha
この文字列を
222tq2tq2tq269
ああ%64agaoiwaha
io.59gagagahai3a.t69
a 5>22gahaiiha
この出力結果にするにはどうすれば良いですか? なら大丈夫ですかね?
この場合だと「文字列2つ + 記号1つ + 数字2つ」のパターンを見つけて改行したい

547:デフォルトの名無しさん
22/11/01 08:48:28.70 p4TXbqbPa.net
じゃあそのパターンで改行すれば…
正規表現でいいんじゃないかな

548:デフォルトの名無しさん
22/11/01 08:51:40.09 CMvcSOEo0.net
このスレよりも、正規表現のスレで聞けば?

549:デフォルトの名無しさん
22/11/01 09:10:51.89 tDs0tp7pM.net
オホダナー
そうだよオホダヨ~

550:デフォルトの名無しさん
22/11/01 09:37:37.84 mmiO/WJW0.net
>>547
その正規表現の表記の方法がよく分からないです
123abcdeあいう

“\d{3}\w*.{3}”
これじゃダメみたいで、どう表記するのが正解なのか分かる方いたら教えて欲しいです

551:デフォルトの名無しさん
22/11/01 09:48:17.04 mmiO/WJW0.net
できました。ありがとうございました

552:デフォルトの名無しさん
22/11/01 10:42:07.10 HBYRkZVUa.net
正規表現の勉強がてらやってみた
URLリンク(ideone.com)
最後の1行はマッチしないね

553:デフォルトの名無しさん
22/11/01 11:08:19.56 mmiO/WJW0.net
表記自体は合っていたのですが、re.match()でやってたせいで出力されなかったみたいで、re.search()に変えるだけで解決しました

554:デフォルトの名無しさん
22/11/01 12:13:10.09 vww+azZz0.net
matchは使わずに
search(r'^なにか')
でいいよな
fullmatchは^と$で
^や$を使うなというのであれば、$だけ使うパターンも整備されていないと不完全

555:デフォルトの名無しさん
22/11/01 16:21:24.69 GYf/ELerM.net
俺は君にマッチしたい※

556:デフォルトの名無しさん
22/11/01 16:40:02.94 1fqXVNhi0.net
正規表現に関してはrubyやperlみたいに演算子にしてしまうのがベストだと思う
searchだとかmatchだとかregexpだとかmatch_allだとか覚えられんて

557:デフォルトの名無しさん
22/11/01 17:42:07.83 59UjWoGEM.net
命名とかAPI設計がイケてない
match、search、fullmatch・・・
たまにしか使わない人は諦めて毎回リファレンス参照するしかない

558:デフォルトの名無しさん
22/11/01 17:59:02.79 vww+azZz0.net
list.append()が破壊的だったかすら忘れてぐぐる

559:デフォルトの名無しさん (ワッチョイ 8b89-g96c)
22/11/01 22:54:57.42 w1dGDiRI0.net
覚えられないのではない
覚えないという選択をしているのだ
覚えるために何か工夫したのか?

560:デフォルトの名無しさん (ワッチョイ 9109-iO6U)
22/11/01 22:55:36.13 EqpfaKBX0.net
イテレータ判定されるのにfor できないんですが
イテレータとはforができるものではないんですか


X = type("")
if hasattr(X, '__iter__') :
for x in X : pass

561:デフォルトの名無しさん
22/11/01 23:34:09.39 yhai460Y0.net
X(= str)じゃなくXのインスタンスならそう

562:デフォルトの名無しさん
22/11/01 23:43:36.24 vww+azZz0.net
覚えないといけない時点でおかしい
理解すれば覚えなくていいのが正解
list.append()は破壊的で、str.replace()は非破壊であることに、
合理的な説明は無い
その方が便利なことが多そうだからとか、メモリの都合とか、
一旦そう決めちゃったからとか、そんな理由に過ぎない

563:デフォルトの名無しさん
22/11/02 00:26:44.23 WNjxQYpUM.net
list.appendは配列の終わりにつけるだけ
str.replaceは配列の途中に差し込む可能性があるからでは?
メモリ操作のコストが違うじゃん

564:デフォルトの名無しさん
22/11/02 00:47:23.04 ul/vZuFO0.net
配列が格納してある後ろに空きスペースがたくさん確保してあるならそうだろうけど
で、コストが実際に違ったとしてもそんなことは知らんがなでしかない

565:デフォルトの名無しさん
22/11/02 00:58:46.26 I1Z+o8fX0.net
みんな知ってることだけど、listはmutableでstrはimmutableだからだよ。
これでもう各関数が破壊的かどうかいちいち覚える必要はなくなったね!

566:デフォルトの名無しさん
22/11/02 01:00:03.55 WNjxQYpUM.net
listはある程度後ろに確保してるしコストが実際に違ったらそれは明確に合理的な理由でしょ

567:デフォルトの名無しさん
22/11/02 01:17:00.86 jyU6y3CY0.net
>>565
これ
まあそういうものとして覚えるしかないわけだけど

568:デフォルトの名無しさん
22/11/02 07:59:09.20 cbFKoHcVM.net
べつに目的の物が作れればどうでもいいんじゃないの?
ミッションクリティカルなモノをコレで作ったりするのかな?

569:デフォルトの名無しさん
22/11/02 11:06:12.06 FQ1wBQnh0.net
listに後ろとか関係なくない?

570:デフォルトの名無しさん
22/11/02 11:21:15.39 1xZXeW2Ya.net
linkedなリストは関係ないよな
連続したメモリに入ってる配列的なやつはアレだけど

571:デフォルトの名無しさん
22/11/02 11:39:42.36 FQ1wBQnh0.net
>>570
str との違いも結局これだし

572:デフォルトの名無しさん
22/11/02 14:55:39.24 VFt43YlcM.net
pythonのリストはポインタの配列でしょ?

573:デフォルトの名無しさん
22/11/02 18:15:12.19 1xZXeW2Ya.net
違います

574:デフォルトの名無しさん
22/11/02 18:27:31.11 jyU6y3CY0.net
PyObject*の配列です
PyObject **ob_item; // PyObject*の配列
Py_ssize_t allocated; // アロケートされてる個数

575:デフォルトの名無しさん
22/11/02 18:28:55.28 jyU6y3CY0.net
cpythonなソースは読みやすい

576:デフォルトの名無しさん
22/11/02 18:42:15.13 ul/vZuFO0.net
0から255までの数字が入った要素数1000の配列があって、
Cだとunsigned char list[1000];
みたいに宣言してlist[i]で参照するとアドレス計算で値を取ってくるけど、
pythonはどうやってるの?

577:デフォルトの名無しさん
22/11/02 18:43:56.47 4MCwg8YuM.net
ちょっと調べた限りやっぱりPythonのリストはポインタの配列だと思うんだが違うっていうなら何か教えて
insertの遅さとかで連結リストではないとは思うけど

578:デフォルトの名無しさん
22/11/02 18:51:59.96 wyluLqIy0.net
>>574が正しい
URLリンク(github.com)

579:デフォルトの名無しさん
22/11/02 18:55:42.08 jyU6y3CY0.net
cpythonのソースはマジで読みやすい
Rubyとかもうぐちゃぐちゃしてて読めねえもん

580:デフォルトの名無しさん
22/11/02 19:05:34.74 jyU6y3CY0.net
実際の配列のサイズはPyObject_VAR_HEADマクロのob_sizeに入ってる

581:デフォルトの名無しさん
22/11/02 19:12:23.01 1xZXeW2Ya.net
>>577
別になんでもいいんです

582:デフォルトの名無しさん
22/11/02 19:14:41.69 5K2+hbiBa.net
答え書かれてるのに全く分かってなくて草

583:デフォルトの名無しさん
22/11/02 19:30:34.65 1xZXeW2Ya.net
大学行くと実装と仕様の区別がつくようになるかも?

584:デフォルトの名無しさん
22/11/02 19:31:01.29 l50Y39h10.net
>>574
つまりポインタの配列

585:デフォルトの名無しさん
22/11/02 19:31:44.66 ul/vZuFO0.net
listにappendすると、ポインタの配列の末尾にポインタが追加される
配列のサイズが変わるので、サイズを増やした配列を作ってコピーしないとできない
筈なのに、idを調べると変わらない
**ob_itemに入ってる値は変わるけど、**ob_item自体のアドレスは変わらない
ということ?

586:デフォルトの名無しさん
22/11/02 19:33:58.87 l50Y39h10.net
組み込みだから作り直した配列にidがコピーされてたり

587:デフォルトの名無しさん
22/11/02 19:36:39.11 oCOyjRuB0.net
VM上は指すオブジェクト変わってないのにid変わったらあかんでしょ

588:デフォルトの名無しさん
22/11/02 19:40:00.28 rAnbDRgM0.net
適当にリンクリストあたりかと思ってた

589:デフォルトの名無しさん
22/11/02 19:40:29.11 ul/vZuFO0.net
appendしても同じオブジェクトという時点で違和感があるんだよな
明らかに別物やん
仮にappendが非破壊で
list = list.append()
とした時にidが変わる方が納得できる

590:デフォルトの名無しさん
22/11/02 19:40:29.75 5K2+hbiBa.net
>>585
逆だよ
ob_item自体は大きさが変わる時にreallocでアドレスが変わるけど
中身の方はポインタをコピーするだけだから変わらない

591:デフォルトの名無しさん
22/11/02 19:42:07.37 1xZXeW2Ya.net
>>577
違うって理解できた?

592:デフォルトの名無しさん
22/11/02 19:51:27.03 5K2+hbiBa.net
>>589
そもそもが全部Cで実装されてるんだからそういうメモリモデルなんだ、という理解で良いと思うよ

593:デフォルトの名無しさん
22/11/02 19:53:06.08 4MCwg8YuM.net
>>591
あなたは何もわかってないのは理解できました

594:デフォルトの名無しさん
22/11/02 19:57:27.92 1xZXeW2Ya.net
>>593
わかんない?
違うよ
どんどん主張が後退するんじゃねえかなという期待の下、繰り返すけど

595:デフォルトの名無しさん
22/11/02 21:11:39.58 CsBXjP5R0.net
リンクリストはリスト的なものを作るときに第一の選択肢としてはこないと思うよ。
任意の要素へのアクセスがO(n)かかるから。
必ず頭から順番に読んで、途中に挿入したいことが多いとかいう状況だったら使うけど、こういう特性を、癖があると思う人の方が多いんじゃないかな。
そういうコンピュータサイエンスの初歩みたいなところの実装が気になるなら、Javaを勉強してみるといいかもね。
リストも辞書もセットも、複数の実装方法が標準で用意されてて明示的にどれを使うか決めなくちゃいけないから。
そう考えると初心者にJava教えてた頃ってコレクションで付いていけなくなり勉強を諦めた人多いんだろうか。

596:デフォルトの名無しさん
22/11/02 21:16:31.46 CsBXjP5R0.net
>>589
夕飯を食べる前の自分と食べた後の自分は別のインスタンスか?って問いにyesと答えられるならばイミュータブルなものにしかidを付けてはいけないと考えているのだろう(そういう言語もある、Haskellとか)
そうでなければ、ミュータブルなインスタンスはミュータブルなんだからidが同じでも中身は変化すると考えるべきだろう

597:デフォルトの名無しさん
22/11/02 21:22:30.41 jJasVlr90.net
idってCでのアドレスそのものなんでしょ
実装の都合でアドレスが変わったらidも変わるというだけの話で、
何らかのポリシーみたいなものは背景に無いような


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

478日前に更新/241 KB
担当:undef