[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 06/30 01:58 / Filesize : 284 KB / Number-of Response : 1045
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん mailto:sage [2022/05/22(日) 22:25:08.74 ID:/hGmbW/Z.net]
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。
「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。

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

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

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公式◇ www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi

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

次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###

623 名前:デフォルトの名無しさん mailto:sage [2022/07/29(金) 19:10:09.40 ID:WG/TpH2M.net]
>>597
無視しない方がいい

624 名前:デフォルトの名無しさん mailto:sage [2022/07/29(金) 19:58:02.11 ID:47SIIXKm.net]
て言うか未定義の「可能性」なんて普通の処理系ではでないだろ
なんかツール使ってるならそのツールの名前書きなよ

625 名前:デフォルトの名無しさん mailto:sage [2022/07/29(金) 20:45:46 ID:IOBifLpO.net]
どこかに未定義ルート有るんだ
そこらへんを探すのが楽しい

626 名前:デフォルトの名無しさん mailto:sage [2022/07/29(金) 21:51:50.81 ID:a1Tgek7B.net]
Ruby では、条件分岐で初期化されるはずの変数が、
初期化されなかった場合に、nil・未定義になる

if false
n = 1
end

p n #=> nil

627 名前:デフォルトの名無しさん mailto:sage [2022/07/29(金) 23:03:00.11 ID:jDexz6tX.net]
翔泳社のスラスラわかるPythonを読み終えて、
次にソフトバンクのPython完全入門を買おうか迷ってるんですが、
どなたか読んだ方いましたら感想を教えて下さい
よろしくお願いします

628 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 02:27:49.30 ID:z4LSWTQO.net]
入門書は1冊で充分なのでは?

629 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 02:27:58.30 ID:z4LSWTQO.net]
入門書は1冊で充分なのでは?

630 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 02:34:45.44 ID:f1hyBgWY.net]
レスは1回で充分なのでは?

631 名前:デフォルトの名無しさん [2022/07/30(土) 09:23:55.07 ID:azT7AVAA.net]
webアプリ作って内部サーバーから使ってみよう、みたいな本読んでるんだが

コマンドプロンプトに
python -m http.server



632 名前:--cgi 8080
と書いてwebサーバー立ち上げて
ブラウザで
htttp://localhost:8080
開くまではできたんだ

ここから
htttp://localhost:8080/開きたいwebアプリ.py
へ移動しても、中身がテキストとして表示されるだけでwebアプリとしては機能しない
これはなにか手順間違えてるかな?

pythonコード自体は以下
https://techiedelight.com/compiler/?MN5F
[]
[ここ壊れてます]

633 名前:デフォルトの名無しさん [2022/07/30(土) 09:27:36.20 ID:paa5jUiA.net]
●未定義ルートがある
●typoを見落とし

634 名前:デフォルトの名無しさん [2022/07/30(土) 09:28:23.25 ID:paa5jUiA.net]
>>606-607
レスは一回で充分

635 名前:デフォルトの名無しさん [2022/07/30(土) 09:29:27.96 ID:paa5jUiA.net]
>>609
flask使え

636 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 13:25:48 ID:OlgNXvPr.net]
呼ばれたクラスのメソッド実行やインスタンスの参照はできますでしょうか?
RubyのBinding_of_caller gemのようなことをやりたいです。

637 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 15:23:09.66 ID:8gKCOMRQ.net]
>>609
例えば、Ruby では、

コンソールで、ウェブサーバー・WEBrick を起動する
ruby -run -e httpd . -p 8080

ブラウザで、
localhost:8080/a.html
とすると、HTML が表示される

例えば、これが、
localhost:8080/a.csv

a.csv, a.txt など、ブラウザが解釈できない拡張子の場合は、ダウンロードされる

638 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 15:41:57.89 ID:cxvuT0Ap.net]
>>609
cgi_directoriesで定義されてるディレクトリの中にあるソースコードじゃないとじっこうできないかも

>>614
csvじゃなくてcgiの話な、チンカス

639 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 15:55:32 ID:lN6AqJ/F.net]
>>609
/cgi-binに配置して
localhost:8080/cgi-bin/xxx.pyでアクセス

640 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 15:56:01 ID:lN6AqJ/F.net]
あ、被ったね

641 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 16:15:20.28 ID:t64/Q8Lh.net]
14分差でかぶるとかすごいな



642 名前:605 mailto:sage [2022/07/30(土) 17:33:25 ID:opcLftHA.net]
レスありがとうございます

実は最初にソフトバンクの本を買おうと思ったのですが、アマゾンレビューを見たら
少しわかりにくい箇所もある、という感想があったのでワンクッション入れました

今となっては独習Pythonなどの中級書に進んだ方がいいですか?

643 名前:デフォルトの名無しさん mailto:sage [2022/07/30(土) 17:49:27 ID:6SJJiflx.net]
手段が目的になってるパターン

644 名前:デフォルトの名無しさん [2022/07/30(土) 19:25:46.15 ID:EI1U6qjF.net]
民明書房の「結局あんたはpythonで何がしたいの?」とか読むといい

645 名前:605 mailto:sage [2022/07/31(日) 08:22:18.53 ID:V2xTXw/0.net]
辛口ですね

646 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 08:43:12.47 ID:bF6WKikK.net]
bool([])がFalseなのに
all([])がTrueになる理屈を教えてください

647 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 08:56:05 ID:IhfjCb0y.net]
イテラブルの要素の探索中にFalseでリターンされなければTrueをリターンされるようにallが実装されてるから
https://github.com/satwikkansal/wtfpython#-all-true-ation-

設計思想的な話しなら分からん

648 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 09:01:11 ID:qkw0CgkT.net]
数学的にそれが自然
Wikipediaの論理包含とかVacuous truthを読め

649 名前:デフォルトの名無しさん [2022/07/31(日) 09:35:16.42 ID:qvc5fIgv.net]
test

650 名前:デフォルトの名無しさん [2022/07/31(日) 09:36:51.24 ID:qvc5fIgv.net]
r = True
for e in S:
r = r and e
return r

S が空の場合,for文の中は1度も実行されない.
返されるのは,rの初期値であるTrue

651 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 09:37:12.57 ID:bF6WKikK.net]
>>624
理屈はわかりました
その実装にした人を小一時間問い詰めたい気分でいっぱいです
all([])の結果にTrueを求める



652 名前:ーザーが世の中に一人でもいるのでしょうか…

>>625
数学はよくわからんのですごめんなさい
[]
[ここ壊れてます]

653 名前:デフォルトの名無しさん [2022/07/31(日) 09:39:03.02 ID:qvc5fIgv.net]
似たような例として,Sの要素の和を計算することを考える.

r = 0
for e in S:
 r = r + e
return r

Sが空の場合,rの初期値である0が返される.

654 名前:デフォルトの名無しさん [2022/07/31(日) 09:45:32.68 ID:qvc5fIgv.net]
似たような例として,Sの要素の積を計算することを考える.

r = 1
for e in S:
 r = r * e
return r

S が空の場合,返されるのはrの初期値である1

655 名前:デフォルトの名無しさん [2022/07/31(日) 09:48:34.65 ID:qvc5fIgv.net]
sum, prodという関数がPythonにあるのならば,

sum([]) == 0

とするのが自然だし,

prod([]) == 1

とするのが自然.

prodのほうは不自然に感じる人がいるかもしれないが,sumが自然なのと同じ理由でprodも自然.

656 名前:デフォルトの名無しさん [2022/07/31(日) 10:26:40.61 ID:qvc5fIgv.net]
0! := 1と定義するのも同じ理由.

657 名前:デフォルトの名無しさん [2022/07/31(日) 12:12:56.03 ID:eQtf7hMi.net]
anyとかallは評価できるものがある場合にのみ使うべきだと思うんだ。空打ちしたら「何だこりゃ」ってなる
つまり
all([]) ではなくall([''])と使いたい。これなら正しく(評価がなされて)falseが返る
つかall([]) ってどういう状況よ

658 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 12:23:51.14 ID:1z9jykhy.net]
リテラルを渡すわけじゃないだろ

659 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 12:55:33.13 ID:VBdofYjo.net]
論理包含、Vacuous truthを読めと言ってる人は理由を知っているだけで理解できていない

660 名前:デフォルトの名無しさん [2022/07/31(日) 13:14:04.77 ID:aNbLKyix.net]
>>635
言葉足らずは役立たず

661 名前:デフォルトの名無しさん [2022/07/31(日) 13:25:03.81 ID:qvc5fIgv.net]
any([]) == False
all([]) == True

こうだと何が問題になるのかが分からない.



662 名前:デフォルトの名無しさん [2022/07/31(日) 13:32:01.26 ID:qvc5fIgv.net]
all(S)は∀x(x∈S ⇒ x==True)が真であるときに,Trueになり,偽であるとき,Falseになる.

Sが空なら∀x(x∈S)は偽だから,∀x(x∈S ⇒ x==True)は真である.

any(S)は∃x(x∈S and x==True)が真であるときに,Trueになり,偽であるとき,Falseになる.

Sが空なら∃x(x∈S)は偽だから,∃x(x∈S and x==True)は偽である.

663 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 14:16:45.61 ID:WKv/EkLm.net]
お勉強スレで403がでる

664 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 14:23:06.73 ID:VBdofYjo.net]
allとanyのあるある言いたい TrueとFalseのあるある早く言いたい

665 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 15:56:07.05 ID:KzJjN0dA.net]
聞いてねえ黙っとけマザコン男

666 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 16:39:23.51 ID:6uU1oN4W.net]
突然マザコンという単語が出てきた
普通の人はすぐに思い浮かぶ単語ではない
つまり、自分がそうだとよく言われたから頭に浮かびやすいと自己紹介しているわけだ

667 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 17:10:58.62 ID:a1qLKfui.net]
vscでインタープリターが設定出来ずエラーになる
なんでぇ…検索しても出てこない…

668 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 17:19:39.16 ID:WKv/EkLm.net]
vscスレあるからそっちで聞いたら?

669 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 17:40:03.84 ID:VBdofYjo.net]
>>623の疑問にバッチリ明快にお答えしましょう
all([1,2,3]) -> True
all([1,2,3]+[]) -> True
all([1,2,3]) and all([]) -> True
よって、all([]) -> True

同様にanyの場合は
any([1,2,3]) -> True
any([]+[1,2,3]) -> True
any([]) or any([1,2,3]) -> True
よって、any([]) -> False

Vacuous truthとか言われても分かんないでしょ、wiki見ても分かんない
>>638の取って付けた数式見ても分かんない、でもコードで書くとあら不思議一目瞭然

670 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 18:21:17.32 ID:vZudoVRF.net]
全く疑問に答えてなくて草生えるwwwww

671 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 18:30:32.80 ID:IhfjCb0y.net]
>>645
空リストに分解するのはいいね
ただanyはFalse側で示さないといけないな



672 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 18:42:16.99 ID:1IXOln4s.net]
1. [True, True]
2. [True, False]
3. [False, False]
4. []

この4つから
1種類だけ処理したい場合と2種類だけ処理したい場合を
all, any, notで各listにつき1回走査するだけで書けるか

673 名前:どうか
もしall([])がFalseだとしたらどうか
[]
[ここ壊れてます]

674 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 19:03:02.60 ID:VBdofYjo.net]
>>647
配列例を一緒にしようとしたんだけど、こっちの方が分かりやすいか

any([0,0,0]) -> False
any([0,0,0]+[]) -> False
any([0,0,0]) or any([]) -> False
よって、any([]) -> False

675 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 19:10:05.63 ID:SPHl3eVE.net]
こう決めてるからといって準備してあるものから答えを持ってくるのではない
あくまでデジタル計算の答えがそうなっているだけ
それをわかってないみたいね

676 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 20:42:04.88 ID:nQONknSe.net]
ID:VBdofYjo
ルビーガイジと別のベクトルで頭おかしいね

677 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 22:11:23.00 ID:NZWDJWM/.net]
単なる慣習でしかなくて合理的な理由はない
プログラミングではall([])がFalseだったほうが楽になるケースの方が圧倒的に多い

残念ながらempty listだけ別途チェックするのが無難

678 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 22:46:03.58 ID:MJo3DzqX.net]
all()は論理積のロジックなので初期値True
any()は論理和のロジックなので初期値False
そうしないと成り立たない

679 名前:デフォルトの名無しさん [2022/07/31(日) 23:10:20.11 ID:Q3Sy7AQw.net]
ドキュメントのallの説明で、(or if the iterable is empty)が加えられたのは2009年か2010年ぐらいから

680 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 23:18:11.45 ID:CM+nxrXh.net]
>>653
それ使う側の視点じゃなくて
内部実装上の都合でしょ?

681 名前:デフォルトの名無しさん mailto:sage [2022/07/31(日) 23:50:52.02 ID:MJo3DzqX.net]
>>655
これ以上に自然な定義はあるのか?
引数が空の時に余計な評価を挟む方がよっぽど不自然だと思うが



682 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 01:15:16.60 ID:NO37bZGb.net]
>>656
実装の都合上は自然かもね
使う側の視点からは全くもって自然じゃないよ

683 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 01:55:03.33 ID:wljefKG6.net]
>>657
all()とany()の動作を文章にして書いてみたら分かる
関数の仕様自体が気に入らないなら自分で書くしかない

684 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 02:13:06.07 ID:4h+jHRsn.net]
>>652
> プログラミングではall([])がFalseだったほうが楽になるケースの方が圧倒的に多い
具体的にコードで示して欲しい

685 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 04:29:53.53 ID:rSGUMJSi.net]
まあ5×0=0で5^0=1なのも実装した人にとって自然なだけだし言いたいことはわかる

686 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 09:45:47 ID:hJhRRxUQ.net]
やっとバカにも理解できたようですが、>>660を見る限り理解できていませんw 残念

687 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 16:21:23.81 ID:Vk1tQ6YT.net]
Eric Matthesの「python crash course」(和名:最短コースでゼロからしっかり学ぶpython入門)を完了して次にデータ解析をやりたいんです
そこで
オレイリーの「pythonによるデータ分析入門」を読んだのですがまだ私にはレベルが高いようです
橋渡しになるレベルの本はありませんでしょうか?

688 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 17:14:07.64 ID:WOhHaybL.net]
>>662
『Pythonによるあたらしいデータ分析の教科書』辺りで
Jupyter Notebookとか分析の基本覚えてから
『Python実践データ分析100本ノック』でデータの前処理とかを本格的に勉強してから
オライリー本読んだ方がええかもね

689 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 18:05:15.09 ID:BgE8bCyg.net]
型ヒント(num: int = 1など)って普通に使われてますか?
私も常に使った方がいいですか?

690 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 20:36:49.60 ID:Vk1tQ6YT.net]
>>663
ありがとうございます
ポチりました

691 名前:デフォルトの名無しさん mailto:sage [2022/08/01(月) 23:46:48.65 ID:It4OEKpF.net]
使われてると思うし使えた方がいい
PyCharmとかVSCodeで書いてると型を判断してくれるので書きやすくなるしミスも判明しやすくなる



692 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 00:20:43.20 ID:R2oSGNsV.net]
>>653
配列の全ての要素が5以上かをチェックするcheck関数を作りました
def check(lst):
return all(i >= 5 for i in lst)
空リストが入力された場合Falseを返したいのですが
論理積のロジックなのでFalseを返すと成り立たなくなります
空リストのチェックはどうすれば良いでしょうか

693 名前:デフォルトの名無しさん [2022/08/02(火) 03:57:40.09 ID:AJvhpMFc.net]
def check(l):
__if l:
____return all(map(lambda i: i>5, l))
__else:
____return False

すべて5以上か みたいな関数名にして使う
checkはダメ。論外

694 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 04:03:59.45 ID:KlfR+zxP.net]
>>667
return bool(lst) and all(i >= 5 for i in lst)

695 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 07:10:05.89 ID:R2oSGNsV.net]
>>668
>>669
これはいけません 論理積のロジックなので空リストが入力された場合はTrueを返す必要があります
Vacuous truthを知らないのですか? 論外です

696 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 07:19:05 ID:Qu9LGAtZ.net]
空listはfalseなのでbool()は不要
もしくは lst or [0] とすれば空listチェック不要

697 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 08:36:47.08 ID:KlfR+zxP.net]
>>670
ああそういうことか
667の質問の意味が今わかった
変な質問だなと思いながら適当に答えちゃった

698 名前:デフォルトの名無しさん [2022/08/02(火) 08:45:25.83 ID:UYHD5f/y.net]
>>670
空のリストでtrue返したいならall([i for i in lst if i>5])で返るが

699 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 08:56:18.05 ID:KlfR+zxP.net]
>>671
bool()は不要のほうは、戻りが True,False,[]の3種類になるから個人的にいや。
lst or [0]のほうは、i >= 5 とかの場合使えなくなるからよろしくないかと。

700 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 08:57:08.71 ID:KlfR+zxP.net]
>>674
訂正
lst or [0]のほうは、i >= 0 とかの場合使えなくなるからよろしくないかと。

701 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 12:52:45.59 ID:7OOUBMB7.net]
>>668
配列じゃなくiterableだと詰むよ



702 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 13:36:46.22 ID:R2oSGNsV.net]
>>672
そうなんッス >>667のcheck関数は完璧ッス 論理積のロジックでVacuous truthで数学的に自然なんッス
check(a+b+c) と check(a) and check(b) and check(c) が等価になると理解できるッス
でも空リストは弾きたいじゃないッスか しかし空リストの場合にFalseで返すと数学的に不完全になるッス
つまり空リストを弾きたいならcheck関数外の前後どちらかで引数のチェック処理が必要というわけッス
メッチャ不便じゃないッスか これが>>659の回答ッス
メッチャ不便なんで数学的に不完全な>>668-669 のようなコードになるッス これが自然ッス
でもその場合 check(a) and check(b) and check(c) みたいな使い方はできなくなるッスよね 空リストが来たらアウトッスから
つーわけでどっちもOKな解決策はあるのかなという質問ッス
同じようなcheck関数を書く場合に空リストの扱いはどうするのかって話ッス
もしそれが>>668-669のようなコードになるのならオイラの勝ちということッス
もちろんall([])がTrueになる理由は理解してるッスよ 5×0=0で5^0=1ってことッスもんね 分かってるッス そこは大丈夫ッス

703 名前:デフォルトの名無しさん [2022/08/02(火) 13:57:06 ID:AJvhpMFc.net]
>>676
要件は配列の要素をチェックする関数の作成だけど。

704 名前:デフォルトの名無しさん [2022/08/02(火) 14:10:48 ID:3RqJykXJ.net]
>>677
そもそも数学的な計算がしたいとき、空のリストが来たら不自然になる って
そりゃ空のリストは数学的じゃねーんだから不自然になって当然だろ

空のリストとかいう非数学を数学化する関数を実装しろよ。それはお前の好きにしろ

705 名前:デフォルトの名無しさん [2022/08/02(火) 14:25:29.34 ID:UYHD5f/y.net]
そういえばBytesIOがイテレーターなのはなんでなの?
配列じゃあかんのか?

706 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 14:44:44.43 ID:PAwGL3nC.net]
>>677
全然意味わからん
空リストを弾きたいならcheckの中で例外発生させるなりすればいいだけじゃねーの?

707 名前:デフォルトの名無しさん [2022/08/02(火) 14:58:23.12 ID:4vAniN45.net]
>>681
こいつはネチョネチョ言葉遊びしたいだけのゴミ野郎だから無視でいいよ
上の方でも暴れとる。rubyキチガイと同列の泥人形

708 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 15:02:37.40 ID:3/XF33uC.net]
どうせ発生しないような例外的なやつの対応ばかり考えている無能

709 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 15:21:43.17 ID:GXJqSimc.net]
>>677
100%同意する

710 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 15:24:08.55 ID:uvL1JwEu.net]
>>678
all([]) == Trueはデメリットが大きい例として>>667が書かれてるという文脈を理解してから書いてね

711 名前:デフォルトの名無しさん [2022/08/02(火) 15:36:16.40 ID:4vAniN45.net]
>>684-685
バレてるぞ恥晒し



712 名前:デフォルトの名無しさん [2022/08/02(火) 15:44:30.79 ID:aYPyq7OS.net]
all([]) == True
any([]) == False

であると困る例を教えてください.

713 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 17:37:12.67 ID:PAwGL3nC.net]
>>685
それ all([ ]) = False でも何も解決しないだろw
True / False しか返せないのに空リストかどうかの情報欲しいなら別の方法で返すしかない

714 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 19:22:29 ID:R2oSGNsV.net]
実は空リストの場合Noneを返すという手を考えたッスけど 数学的完全性を保つことはできなかったッス
しかしたった今思いついたッス 空リストの場合は2を返せばいいッス 2はTrueッス
我ながら自分の才能が恐ろしいッス

715 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 19:46:15 ID:R2oSGNsV.net]
>>689
訂正するッス 2じゃなくて1.0を返せばいいッス 空リストの場合は1.0を返すッス
1.0なら check(a+b+c) == (check(a) and check(b) and check(c)) が成立するッス

716 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 20:00:27.12 ID:rqWYIp9A.net]
それで最初に言ってた
> 空リストが入力された場合Falseを返したいのですが
これは満たせるの?

717 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 20:07:03.39 ID:R2oSGNsV.net]
>>691
・・・満たせないッスね 判別ができるようになるだけで その判別方法もrepr()=='True'とかで煩雑 だめッスね

718 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 20:21:40.29 ID:KlfR+zxP.net]
>>690
1.0が返ってくると
if check(lst) == 1.0: と if check(lst) == True: のどちらもTrueになるけど
if type(check(lst)) == float: で判定するの?
副作用は少ないけど美しくない
1.0じゃなくて1のほうがさらに副作用なくていいとおもうけどね

719 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 20:44:31.40 ID:H9/akC1Y.net]
元になってる数学の考え方自体の限界
使う側がバグらないよう注意するしかない

python特有の問題じゃないのが救い

720 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 20:48:40.69 ID:R2oSGNsV.net]
>>693
美しくないッスね そもそも空リストチェックは言うほど不便じゃないッスよね
if lst and check(lst): ってするだけッスもんね
オイラの中で結論が出たッス やはりallにならってcheck関数も空リストのときはTrueを返すべきッス
必要に応じて空リストチェック( lst and check(lst) )をする こんだけッス シンプルで美しいッス
ビギナーズトラップかもしれないけどそんなの知らないッス

721 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 21:07:06 ID:rqWYIp9A.net]
初心者すぎて、これでいいのか分からんけど
boolとandあたりをオーバーライドしたクラスを返却するとか?
空リストかどうかの情報まで持たせたクラス

って、最初の仕様を捻じ曲げていいのか・・・



722 名前:デフォルトの名無しさん [2022/08/02(火) 22:23:57.41 ID:XEhMcRRQ.net]
超初心者なんですが、
社内LANの共有ストレージ内のExcelファイルを操作して作業自動化をしたいと思っています。
社用PCへのインストール申請が面倒なのでGoogle Colabでやってみたら、ストレージ内のファイルが読めないということで渋々インストール申請しようとしているところです。
JupyterLab Desktopで社内LANの共有ストレージのファイルは操作できますか?
環境構築から躓いてます…

723 名前:デフォルトの名無しさん mailto:sage [2022/08/02(火) 23:17:59.15 ID:Z18rEo5s.net]
浮動小数点数を==比較すると言うとヒステリック

724 名前:ネ反応する奴いるよな []
[ここ壊れてます]

725 名前:664 mailto:sage [2022/08/03(水) 00:27:23.50 ID:Ce9Xia0b.net]
>>666
レスが遅くなってしまってすいません

ありがとうございました
なるべく使っていこうと思います

726 名前:デフォルトの名無しさん [2022/08/03(水) 02:48:22.00 ID:HUfXY4jl.net]
>>697
インストール申請いる会社だとpythonは厳しい
外部ライブラリをいくつもインストールすることになるから、そのたびに申請申請…

727 名前:デフォルトの名無しさん mailto:sage [2022/08/03(水) 03:03:39.79 ID:OfDGteUO.net]
自分自身が会社にアンインストールされちゃうよなw

728 名前:デフォルトの名無しさん mailto:sage [2022/08/03(水) 06:34:50.12 ID:NNzHRQEi.net]
>>697
環境はWindowsだと思うが元からあるExcel VBA、VBScript、PowerShellあたりでできないか考えた方がいいかと

729 名前:デフォルトの名無しさん mailto:sage [2022/08/03(水) 06:44:43.69 ID:SAIeW7L3.net]
>>697
インストール申請云々の縛りあるなら普通にVBAでやれよ

730 名前:デフォルトの名無しさん mailto:sage [2022/08/03(水) 06:55:06.47 ID:6v79gKr9.net]
インストール申請あるところならVBA/VBS禁止とかありそうだけどな

731 名前:デフォルトの名無しさん mailto:sage [2022/08/03(水) 09:06:23.71 ID:7qOk9bFG.net]
大半のライブラリはインストールじゃなくダウンロード



732 名前:デフォルトの名無しさん [2022/08/03(水) 09:20:26 ID:6HJ5FZxO.net]
P ⇒ QはPが偽のとき真です。

733 名前:デフォルトの名無しさん mailto:sage [2022/08/03(水) 12:49:46 ID:s6+jOjkc.net]
pythonのパッケージ管理ってどうやってる?
初心者だから本とかウェブ記事とか読みながらそのまま適当にpipしてたんだけど
このままだとめんどくさいことになりそうな気がしてきた

734 名前:デフォルトの名無しさん mailto:sage [2022/08/03(水) 13:06:03 ID:jXa2B14I.net]
poetryで作った環境にインストールしてグローバルに使いたい奴だけリンク張ってる
poetry使ってるのはライブラリ開発するのに使ってるついで
環境分けたいだけならvenvそのまま使えばいい

735 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 03:46:24 ID:BBoT8RMz.net]
プログラミングなんて大してSSDの容量使わねーだろ、と思ってたらanacondaが10GBぐらい使ってきて泣いた

736 名前:デフォルトの名無しさん [2022/08/06(土) 09:34:49.25 ID:80xJcjdY.net]
pyinstallerで.pyファイルのexe化を試みています。
opencvがエラーを吐いて正常に動作しません。

ImportError: ERROR: recursion is detected during loading of "cv2" binary extensions. Check OpenCV installation.

google検索してやったこと。
paths=でモジュールの場所を指定
opencvのバージョンを4.5.3.56まで落とす(インストールエラー)

python: 3.10.6
altgraph==0.17.2
future==0.18.2
numpy==1.23.1
opencv-python==4.6.0.66
pefile==2022.5.30
Pillow==9.2.0
pillow-avif-plugin==1.2.2
pyinstaller==5.3
pyinstaller-hooks-contrib==2022.8
pywin32-ctypes==0.2.0
Send2Trash==1.8.0

737 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 10:40:10.54 ID:XSn5nlI0.net]
nuitkaを使う

738 名前:デフォルトの名無しさん [2022/08/06(土) 15:50:19.67 ID:eSBCWCwI.net]
>>709
Anacondaはぶっ太い糞

739 名前:デフォルトの名無しさん [2022/08/06(土) 15:51:47.59 ID:eSBCWCwI.net]
>>710
opencv-python-headless

740 名前:デフォルトの名無しさん [2022/08/06(土) 16:30:43.76 ID:80xJcjdY.net]
>>710 レスありがとうございます。
nuitka、使ってみました。やはりopencv周りは色々問題があるようです。うまく動作しませんでした。

>>713 レスありがとうございます。
opencv-python の代わりに opencv-python-headless を使ってみましたが、全く同じエラーでした。

やはり opencv は難しいのでしょうか…

741 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 17:26:48.46 ID:PSjXEZOE.net]
GoogleはGoなんて作る暇があったらPythonコンパイラを作るべきだった



742 名前:デフォルトの名無しさん mailto: []
[ここ壊れてます]

743 名前:sage mailto:2022/08/06(土) 19:16:19.27 ID:kORMtiG2.net [ pycodestyleの機能って便利ですね ]
[ここ壊れてます]

744 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 19:22:52.36 ID:Cy8sVH5p.net]
お気づきになられましたか

745 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 19:54:32.19 ID:Tb2OU3Zj.net]
impor requests
ってやると
Library stubs not installed for "requests" (or incompatible with python 3.9)
とでてくるんだが
リクエスト "用のライブラリスタブがインストールされていない(またはpython 3.9と非互換)。

よくわからん

746 名前:710 [2022/08/06(土) 20:04:04.35 ID:80xJcjdY.net]
結局、ネット上で実績ありそうな、

Python 3.8.5
altgraph==0.17.2
future==0.18.2
numpy==1.23.1
opencv-python-headless==4.5.3.56
pefile==2022.5.30
Pillow==9.2.0
pillow-avif-plugin==1.2.2
pyinstaller==5.3
pyinstaller-hooks-contrib==2022.8
pywin32-ctypes==0.2.0
Send2Trash==1.8.0

で実行ファイルからエラーが消えたようです。
アドバイスくださった方、どうもありがとうございました。

バージョン管理って大変ですね。

747 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 20:29:16.15 ID:7+clXBwJ.net]
>>718
そのまんまじゃねーか

748 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 20:49:02.89 ID:XxOEvUoc.net]
pytorch入れた時の悪夢が蘇って来た。orz

749 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 21:42:16.91 ID:PGZhucx9.net]
>>718
何使ってるか知らんがmypyが有効になってるんじゃないの?

750 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 21:47:15.58 ID:PQ7gBqNg.net]
ディレクトリがcase-sensitiveかどうか調べる方法ありますか?
環境はWindows10です
やり方がわからないので対象のディレクトリ内にcase-sensitiveなディレクトリ名やファイル名が存在するか調べることでなんとかしようとしたけど
pathlibのglobではcase-sensitiveなディレクトリ名やファイル名では読み抜け発生
os.walkならいけるかもと思い実験中

751 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 22:42:37.85 ID:IJoLUcj8.net]
>>723
abc でディレクトリ作って ABC で存在確認するとかかな
恐ろしいことにOSXではパス毎にCase Sensitiveかどうかを設定出来るらしい...
https://stackoverflow.com/questions/7870041/check-if-file-system-is-case-insensitive-in-python



752 名前:デフォルトの名無しさん mailto:sage [2022/08/06(土) 23:10:23.53 ID:PQ7gBqNg.net]
>>724
最近のWindowsもフォルダ毎にCase Sensitiveかどうかを設定出来るんですよ
対象のパスの下のサブディレクトリも個別に調べなきゃいけない

753 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 01:53:51.53 ID:HkpslvdA.net]
pylintというのを知った
俺の作ったコード
pylintしたら4点だった
きびしすぎん?

754 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 04:45:52.49 ID:qW86g0dh.net]
つ Flake8

755 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 09:31:21.46 ID:7cQO/w5k.net]
pip installでインストールしたモジュールがどのフォルダ(ディレクトリ)に
入ってるか確認する方法ってありませんか?
エクスプローラーで見てもありません…

756 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 09:51:04.57 ID:qW86g0dh.net]
pip show パッケージ名

757 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 09:51:59.31 ID:wF6HChc5.net]
隠しファイル、隠しフォルダー、および隠しドライブを表示する

758 名前:デフォルトの名無しさん [2022/08/07(日) 11:38:08.36 ID:H7AA9Gyj.net]
>>728
__file__ でわかる。
例えばopencvなら
>import cv2
>print(cv2.__file__)

759 名前:728 mailto:sage [2022/08/07(日) 15:47:17.43 ID:7cQO/w5k.net]
答えてくれた方、ありがとうございました

pip show requests を実行したらパスが表示されました
pythonの処理系があるフォルダの近くにあるみたいなんですが、
VSCodeのどのフォルダにいる状態でインストールしても、
インストールされる場所は同じなんでしょうか?

760 名前:デフォルトの名無しさん [2022/08/07(日) 16:25:21 ID:qancDJyG.net]
class A(text:str, value:int)
class B(A)

VSCodeだとマウスオーバーで引数が確認できますが
上記のような継承があるとき
b = B()
マウスオーバーでAの引数を確認したいのですが、どうすればいいですか?

761 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 16:29:37 ID:wx1/uok7.net]
今のデフォルトはpylanceだっけか



762 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 16:31:40 ID:Iy538lTc.net]
>>733
>class A(text:str, value:int)

今ってこんな定義方法があるの?

763 名前:デフォルトの名無しさん [2022/08/07(日) 17:18:29.82 ID:PNBshUzP.net]
__init__か?
クラスBでオーバーライドしてなきゃAの引数が表示される

764 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 18:29:09.72 ID:J7BfdoVn.net]
pipよりもpypl

765 名前:デフォルトの名無しさん [2022/08/07(日) 18:37:37 ID:qancDJyG.net]
素で間違えた
いまこうです
Bじゃなくて継承元のAの引数が見たいです
https://imgur.com/PkQnHo3.png

vscodeはpylanceですね

766 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 18:41:34 ID:k9D8AutH.net]
え・・・・・

767 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 18:50:58.51 ID:ZjeWku4d.net]
Bの__init__を消そう

768 名前:デフォルトの名無しさん [2022/08/07(日) 19:08:00.18 ID:qancDJyG.net]
>>740
おーありがとう
そういうことk

769 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 21:07:17.99 ID:uhtWaMBb.net]
>>710
specファイルに、

pathex=['C:\........\site-packages\\cv2']
(パスは環境次第)
とcv2のフルパス入れてますか?

770 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 10:00:21.56 ID:RWKMU7OX.net]
numpy配列をopencvで扱う画像にする時って
cv2.imdecodeとnumpy.reshapeの二通りのやり方があるみたいだけどどう使い分けるんです?

771 名前:毛の生えたブリーフ [2022/08/08(月) 10:56:42.38 ID:nUMoT9LF.net]
2003年 当時荒れていたdelphiスレッドの緊急避難先で作った「くだすれDelphi 」

ヘッダーを各言語用に改変してPythonのスレッドが出来ていたのか・・・・
あれから20年近く・・・俺も還暦になるわけだ。

プログラム板にきたのは13年ぶり。 いつのまにか2chが5chになって
ひろゆきがメジャーになってた。



772 名前:デフォルトの名無しさん [2022/08/08(月) 10:57:33.77 ID:nUMoT9LF.net]
いやん誤爆してごめんくさい

773 名前:デフォルトの名無しさん [2022/08/08(月) 11:17:06.38 ID:AUtZ1mrn.net]
>>742
はい。specファイルの pathx に入力する方法も試したのですが、同じエラーです。

その後色々組み合わせをためしているのですが、3.10系では成功したことがありません。
3.8, 3.9系では opencv のバージョン次第で正常に動作します。

あと>>711 が教えてくださった nuitka ですが、アンチウィルスが過剰に反応するので諦めました。

774 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 16:30:56.98 ID:ej7caoJh.net]
ショートサーキットについてお聞きしたいです

本によるとandやorの両側には関数も取ることができ、
1 < 2 and print('right')
1 > 2 or print('right')
をインタラクティブシェルで実行すると
それぞれ'right'が表示されるみたいですが、釈然としません

そういうものだと覚えておくしかないでしょうか?

775 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 16:37:01.79 ID:GNjKAHJ2.net]
なにがわからないの?
x and y === if x then y else x
x or y === if x then x else y

776 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 17:05:06 ID:Rerux/uK.net]
>>747
それ
True and print('right')
False or print('right')
と同じで両方共に print('right') の値を見ないと全体の値は確定しないから 'right' が表示されるのは当たり前
1 > 2 and print('right')
ってやればどうなる?

777 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 17:15:18.30 ID:w9crSB+N.net]
andは左側が真の場合、右側を評価する
andは左側が偽の場合、右側を評価しない
orは左側が真の場合、右側を評価しない
orは左側が偽の場合、右側を評価する
左側だけで真か偽か判明してる場合は右側を評価しない

778 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 18:30:45.48 ID:VXkV51Mv.net]
>>746
そうですね。書いてありましたね。
あとやったとすれば、
a.datas += [('習済みデータ.xml','

779 名前:.\\習済みデータ.xml', 'DATA'),]
※学習済みデータは「haarcascade_frontalface_default.xml」等
を記述したことと、1つのファイルにしたときに、Temporaryの実行パスを取得を工夫したことくらい…

あ、できたファイルを実行時にウィルスとして検知されるので、
pyinstallerの中のファイルの再コンパイルも必要です。
[]
[ここ壊れてます]

780 名前:747 mailto:sage [2022/08/08(月) 19:28:04.38 ID:ej7caoJh.net]
>>748-750
ありがとうございます

すいません、聞き方が悪かったです
ショートサーキットの機構については分かります
bool型を返すわけではないprint()関数が右端に「使える」ことが不可解です
print()は確かNoneを返す関数だったはず

781 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 19:40:14.54 ID:Rerux/uK.net]
>>752
None を bool として評価すると False になる



782 名前:デフォルトの名無しさん [2022/08/08(月) 19:41:18.38 ID:wsYAfPSE.net]
>>752
NoneはFalse
bool()で非ブール型もブールに変換した上で解釈される

783 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 20:06:39.11 ID:UzajzKaJ.net]
右辺はboolとしてなんて評価されません
適当なことを言うな
https://wandbox.org/permlink/gk6gdiVzpzvoPWfI

784 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 20:15:13.65 ID:EDIALeRU.net]
>>755
評価時に__bool__が呼ばれます。if とかで使うと出力される。

785 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 20:33:20.93 ID:EDIALeRU.net]
左だとすぐに呼ばれるのに対して違うんですね理解しました

786 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 21:21:18.46 ID:icSMNlYR.net]
文字列の置換って
translate()とreplace()のいいとこ取りの置換方法ないの?

translate()は
"aa"→"b"
にできないんだよね?

あと
AAA = kansuu(AAA)
BBB = kansuu(BBB)
CCC = kansuu(CCC)
DDD = kansuu(DDD)
みたいな感じになってるときって
for文で入れていく以外思いつかないんだけど、他に見やすい書き方あるかな?

787 名前:デフォルトの名無しさん mailto:sage [2022/08/08(月) 22:27:42.98 ID:GdyVfCQX.net]
>>758
文字列をmappingベースで置換したいならflashtext使うといいかも

2つ目のはAAA, BBB, CCC, DDDをコレクション(dict, list, tuple等)にする

788 名前:デフォルトの名無しさん [2022/08/09(火) 11:17:14.43 ID:6xBGELHM.net]
フォルダパスとファイル名とURLを書くと画像を保存してくるコードを書いたんだけど
https://techiedelight.com/compiler/?BQkA

エラーの対処はわかったんだけど、もっと別の書き方があるのではと思ってしまう
他の人はこれをどう書きますか?

789 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 13:25:52.34 ID:804xd0t9.net]
raw文字列

790 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 14:13:10.80 ID:6cdAV71K.net]
バックスラッシュの代わりに、スラッシュを使う
でもいい

791 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 14:27:14.68 ID:reKZbZGW.net]
raw文字列、joinpath、with_suffix



792 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 16:46:37.99 ID:904t2Z05.net]
pathlib一択でしょうね

793 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 17:34:17.89 ID:VX/MyXfz.net]
HTTPErrorやIOErrorのハンドリングもやったほうがいいよ

794 名前:デフォルトの名無しさん [2022/08/09(火) 17:48:28.39 ID:/U/bpI39.net]
外部からの入力系は全部
try:
req
except:
クソ
するな俺は。ユーザーは信用しない
あとダウンロード系も
try:
down
except:
失敗
する。どんなわけわからんエラーくるかしらんし

795 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 18:07:25.22 ID:RasYFqXo.net]
外部とのやり取りは一筋縄ではいかないからねえ
ついでにリトライも入れておきたい
requestsには頼らずビルトインで頑張るw

796 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 18:28:07.98 ID:Lt/MnBA ]
[ここ壊れてます]

797 名前:v.net mailto: >>766
それ普通じゃね?
[]
[ここ壊れてます]

798 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 21:17:15.16 ID:DxAePLof.net]
わざわざtryしなくても例外が起きると止まるっしょ

799 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 22:15:13.78 ID:v2aJaQdL.net]
わざわざブレーキつけなくても事故れば止まるっしょ

800 名前:デフォルトの名無しさん mailto:sage [2022/08/09(火) 23:22:34.01 ID:xxgft6hm.net]
>>760
Windows で、path = "C:\a\b"
みたいに、\ を使わなければならないの?

Ruby では、
path = "C:/Users/Owner/Documents/a"
みたいに、/ を使うけど

801 名前:デフォルトの名無しさん [2022/08/09(火) 23:25:51.13 ID:KqAyUORM.net]
>>771
前半、バックスラッシュを使わなくてもアクセスできる。
後半、スレチ。いちいち書くな。



802 名前:デフォルトの名無しさん [2022/08/09(火) 23:34:41.82 ID:oM0lzHLp.net]
合わせてバックストレッチ。

803 名前:747 mailto:sage [2022/08/09(火) 23:46:35.97 ID:8UDvOyKH.net]
レスが遅くなってすいません
答えてくれた方ありがとうございました
ああいった書き方もあるんだと頭の片隅に留めておきます

804 名前:デフォルトの名無しさん [2022/08/10(水) 00:02:07.83 ID:DjE5xMJT.net]
>>769
普通はエラー処理系にraiseするからtry節置くと思うが

805 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 02:29:00.47 ID:kx7L/9BB.net]
なにが普通かは人による

806 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 03:50:21.12 ID:obfeaPUq.net]
なぜこの関数が作られたのかを考えながらプログラム書くとすっきりする

807 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 10:26:29.49 ID:rR8/AFmc.net]
Enum 列挙型という概念を初めて知ったが
使い所がよくわからない

808 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 12:53:32.14 ID:vnHVeG1e.net]
関数をローカル変数に代入するメリットって何でしょうか?

809 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 13:19:15.14 ID:8RUvvZbB.net]
何度も同じ計算をしないで結果だけ繰り返し使える

810 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 13:33:33.79 ID:bGy3yklD.net]
場合によるけど、処理前半でローカル変数に関数を代入しておくことで、処理後半の分岐が消えて見通しが良くなる可能性はあるかも。
何らかの理由でリネームしたかったとか?

811 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 15:00:50.94 ID:vnHVeG1e.net]
ありがとうございます



812 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 15:59:42.31 ID:WlLD55gQ.net]
>>779
同じコードで呼び出す関数だけ違うパターンって結構あるから
ソートとか

813 名前:デフォルトの名無しさん mailto:sage [2022/08/10(水) 17:43:12.15 ID:YLnkT8Qt.net]
>>779
ループ内で毎回foo.bar()するよりも
ループの外でbar = foo.barして
ループ内ではbar()だけにすると微妙に速くなる

814 名前:デフォルトの名無しさん [2022/08/10(水) 21:48:18.68 ID:5JgNVH0W.net]
かけるかな

815 名前:デフォルトの名無しさん [2022/08/11(木) 07:13:22.60 ID:HPSk7Pik.net]
https://i.imgur.com/FBcOaIq.png
質問です。WindowsでColabでやってます。
1024×768のサイズの画像のみを収集したいのですが、
違うサイズの画像が入ってきます。どうすればいいですか?

816 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 07:56:07.13 ID:X31RE6bn.net]
>>786
設定したfiltersがcrawlに設定されていない
google_crawler.crawl(keyword='流星', filters=filters, max_num=10)

817 名前:101 mailto:sage [2022/08/11(木) 09:45:20.53 ID:fCiqpa8j.net]
英語って本当にプログラムに適してるのか?
isspace()
って何かと思ったらis spaceかよ
空白ないと判別しにくいのはプログラミングにおいてどうかと思うわ

818 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 10:00:41.98 ID:nadsErGw.net]
キャメルケースとかスネークケース使えよ

819 名前:デフォルトの名無しさん [2022/08/11(木) 10:13:40.52 ID:ECrQVbq4.net]
atoi

820 名前:デフォルトの名無しさん [2022/08/11(木) 11:12:03.43 ID:m7iYSaV1.net]
>>788
少なくともあんたはプログラムに向いてないな

821 名前:デフォルトの名無しさん [2022/08/11(木) 12:26:10.60 ID:fKEJQx+N.net]
https://i.imgur.com/HJTruLr.png




822 名前:>>787
ありがとうございます。早速、記入してみたのですが、
画像が収集できなくなりました!
AssertionError となりましたが、どうすればいいですか?
[]
[ここ壊れてます]

823 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 12:46:20.99 ID:7cUH/Z7I.net]
×(かける)じゃなくて x(エックス)じゃねーの?
=1024x768
てか、コードはスクショじゃなくてコピペしてくれ

824 名前:デフォルトの名無しさん [2022/08/11(木) 13:47:35.08 ID:fKEJQx+N.net]
>>793
ありがとうございます。早速、修正してみたのですが、
TypeError となりました!どうすればいいですか?
コードのコピペ↓
from icrawler.builtin import GoogleImageCrawler

google_crawler = GoogleImageCrawler(storage={'root_dir': '流星フォルダ'})
filters = dict(size='=1024x768')
google_crawler.crawl(keyword='流星', filters=filters, max_num=10)

825 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 13:58:15.94 ID:7cUH/Z7I.net]
エラーもコピペしてくれよ...

826 名前:デフォルトの名無しさん [2022/08/11(木) 14:07:01.78 ID:fKEJQx+N.net]
>>795
このようなエラーとなっています。
エラー↓
Exception in thread parser-001:
Traceback (most recent call last):
File "/usr/lib/python3.7/threading.py", line 926, in _bootstrap_inner
self.run()
File "/usr/lib/python3.7/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.7/dist-packages/icrawler/parser.py", line 104, in worker_exec
for task in self.parse(response, **kwargs):
TypeError: 'NoneType' object is not iterable

827 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 15:00:05.18 ID:7cUH/Z7I.net]
>>796
バグかも...
https://github.com/hellock/icrawler/issues/107

828 名前:デフォルトの名無しさん [2022/08/11(木) 15:15:10.72 ID:fKEJQx+N.net]
>>797
バグですか...ありがとうございます。
他のコード、1024×768のサイズの画像のみを収集するには、
どうすればいいですか?

829 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 15:27:49.52 ID:JwgkCgjA.net]
めちゃ無駄だけど1024x768以外の画像は捨てちゃうぐらいしか思いつかん...

830 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 16:47:42.06 ID:X31RE6bn.net]
>>798
できました、min_sizeとmax_sizeも指定する必要があるみたいです
Python3.10でやりました、TypeErrorにはなりませんでした

google_crawler = GoogleImageCrawler(storage={'root_dir': '流星フォルダ'})
filters = dict(size='=1024x768')
google_crawler.crawl(keyword='流星', filters=filters, max_num=10, min_size=(1024, 768), max_size=(1024, 768))

831 名前:デフォルトの名無しさん [2022/08/11(木) 18:48:40.17 ID:fKEJQx+N.net]
>>800
ありがとうございます。早速、試してみましたが、
バージョン違いのためかNameError となりました。
現在、Python 3.9.12 のバージョンなのですが、
ColabでPython3.10にするにはどうすればいいですか?



832 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 18:56:22.30 ID:X31RE6bn.net]
エラーもコピペしてくれよ...

833 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 19:26:39.81 ID:L6VcpDZr.net]
バージョン違いって断定してるんだからそれでいいだろ
他の可能性を検討しようとするなよ

834 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
そんな能力あるのになんでColabのバージョンは変えられないの?

835 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>801
Python 3.9.7が残っていたからicrawlerインストールして>>800実行したら
問題無くできたのでPython3.9.12でもできるハズ
Colabが悪いのではないでしょうか?

836 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
windowsの3.9.13でも問題ないな
ちゃんとgoogleの検索結果取得できてないか、htmlパースに使ってるbeautifulsoup4かlxmlがおかしいかかな

837 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 20:01:15.15 ID:X31RE6bn.net]
>>801
まさかだけどNameErrorって、NameError: name 'GoogleImageCrawler' is not defined じゃないよね?
>>800の前にfrom icrawler.builtin import GoogleImageCrawler してるよね?

838 名前:デフォルトの名無しさん [2022/08/11(木) 20:18:34.40 ID:fKEJQx+N.net]
>>807
ありがとうございます。早速、試してみましたが、
見事に解決しました。
>>800
改めてありがとうございます。
お陰さまで、1024×768のサイズの画像のみを収集することができるようになりました。

839 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 20:24:18.19 ID:7cUH/Z7I.net]
>>807
せめて>>794ぐらいは見てから書きなよ...
まあエラーのコピペ待ちでいいかと

840 名前:デフォルトの名無しさん mailto:sage [2022/08/11(木) 20:25:02.29 ID:7cUH/Z7I.net]
>>808
えっ、まじで>>807だったの?...

841 名前:デフォルトの名無しさん mailto:sage [2022/08/12(金) 05:55:29.63 ID:vrgQH6RZ.net]
(超初心者用



842 名前:) []
[ここ壊れてます]

843 名前:デフォルトの名無しさん [[ここ壊れてます] .net]
jupyternotebookでセル内のコードが長くなるため,
defで定義した関数を同一ディレクトリ内のmy_func.pyに保存し
メインのコードmain.py 内でimportすることにしました.

my_func.pyに保存した関数内では,numpyを使っているのですが,numpyが認識されません.
main.py でnumpyをインポートしていますが,その効果をmy_func.py内に待避した関数に及ばせるためには
どうすればよいでしょうか.

844 名前:デフォルトの名無しさん [2022/08/12(金) 11:54:38.42 ID:V16IFZ6j.net]
my_func.pyでnumpyをインポート

845 名前:デフォルトの名無しさん mailto:sage [2022/08/12(金) 13:39:22.16 ID:f9Pn84YJ.net]
>>813
ありがとうございます。早速、記入してみたのですが、
my_func.pyでnumpyが認識されました。
main.py内にインポートしているnumpyどうすればいいですか?

846 名前:デフォルトの名無しさん [2022/08/12(金) 14:10:01.68 ID:AKRIAlbQ.net]
main.pyでnumpyを使っていなければいらない

847 名前:デフォルトの名無しさん [2022/08/12(金) 15:01:37.64 ID:P/MIlql5.net]
そのライブラリを直接呼ぶコードがあるファイル毎にimportする。直接呼ばないなら不要

main.py
__import funcs

__funcs.test()


funcs.py
__import numpy

__def test():
____print(numpy.random.randint(0, 10))

848 名前:デフォルトの名無しさん mailto:sage [2022/08/12(金) 15:14:18.69 ID:f9Pn84YJ.net]
>>815
>>816
ありがとうございます。早速、試してみましたが、
見事に解決しました。

849 名前:101 mailto:sage [2022/08/12(金) 16:36:29.89 ID:SBMPsz73.net]
普通、FunctionalをFucって略すか?


幻塔というゲームのテスト用のサーバーネームが
JP Fuc Test Server
だったらしく炎上してた

850 名前:デフォルトの名無しさん mailto:sage [2022/08/13(土) 03:28:02.47 ID:nuG2c1c/.net]
mypyでエラーにならないように pathlib.Path の型を示したいんだが、これはどうすりゃいいのかね?
type()でチェックすると
<class 'pathlib.WindowsPath'>
となるんだが pathlib.WindowsPath と指定してもエラー出るし

851 名前:デフォルトの名無しさん mailto:sage [2022/08/13(土) 03:32:04.91 ID:nuG2c1c/.net]
動的な基底クラスはmypyでチェックできないって言ってる人がいたわ
そういうことなのか?



852 名前:デフォルトの名無しさん [2022/08/13(土) 03:54:53.99 ID:xLCZiP8v.net]
pylanceだとpathlib.Pathでいけるけどmypyあかんか?

853 名前:デフォルトの名無しさん mailto:sage [2022/08/13(土) 07:30:43.65 ID:nuG2c1c/.net]
>>821
お、いけたわ
さんくす

854 名前:デフォルトの名無しさん [2022/08/14(日) 04:23:42.79 ID:aYzApZcG.net]
pythonでcuda使いたいが、お勧めのサイトありますか?
ちなみにcudaは3090とかの方がいいですか?

855 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
にほんごでおk

856 名前:デフォルトの名無しさん [2022/08/14(日) 10:12:56.20 ID:A6qxvdf0.net]
[python cuda]🔍

857 名前:デフォルトの名無しさん mailto:sage [2022/08/14(日) 11:25:05.75 ID:Gnb69e0i.net]
Noneの比較はis を使うべきで==を使うべき"でない"なんて記述を見かけるのですが、

if dictData.get('key') == 'hogehoge':
__echo 'OK'

例として辞書のgetメソッドのようにキーが無ければNoneを返すような場合で上記のような判定もすべき"でない"のでしょうか?
この場合dictData.get('key', '')のように、キーが見つからない場合の値を明示的に書くべき?
(ただdict.get()のようにコントロールできないのもありますよね)

858 名前:デフォルトの名無しさん mailto:sage [2022/08/14(日) 12:06:39.34 ID:KzxSNF0d.net]
if hoge is None:
こんな風に定数Noneと比較する場合の話だよ

859 名前:デフォルトの名無しさん [2022/08/14(日) 12:18:23.17 ID:T9w5rPHY.net]
Noneを==すると稀にNone==None ->Falseあるから避けよう。バグのもと。これはググれば解説あるから読んで

で、普通は
if dic.get('key') == 'foo':
__func()
だけでしょう。あればする、なければ終わり

if dic.get('key') == 'foo':
__func()
else:
__func_b()
でもいいけど。

基本的にNoneやFalseを判定しにいかない。まずTrue判定をして、その反対をelse (if)で受ける

ただまあNone / Falseだけを知りたい場合があって
そのときは
if dic.get('key') is None:


860 名前:__func()
などと書く。英文として読みやすいからよい

つか辞書から無い可能性あるkeyのgetは避けたい
db検索的に書きたいならget使わずtry節書いてKeyError専用処理作ろう
[]
[ここ壊れてます]

861 名前:デフォルトの名無しさん mailto:sage [2022/08/14(日) 12:29:39.79 ID:Gnb69e0i.net]
>>827,828
なるほど、明示的にNoneであることの比較の場合はということですね。ありがとうございます。
>>828さんの最後の件も承知しました。



862 名前:デフォルトの名無しさん mailto:sage [2022/08/14(日) 12:34:40.20 ID:Gnb69e0i.net]
>>828
あ、やっぱりすみません、最後のget使うべきでない理由って簡単に教えていただけますか?
今回、API等の応答で、辞書の目的のキーがあったりなかったりするような応答で、キーがあれば拾う、無ければ無視、という単純なものなのですが、それでもgetは使わないほうが良かったりしますか?

863 名前:デフォルトの名無しさん [2022/08/14(日) 12:41:52.12 ID:VI2zLni0.net]
>>682
1000%同意する

864 名前:デフォルトの名無しさん [2022/08/14(日) 12:45:09.72 ID:Xz0meKRj.net]
>>830
dict['key']が存在してvalueがNoneの場合にTrueになっちゃうから、キーの不存在判定だけしたいなら'key' in dictの方がいいんじゃないかな

865 名前:デフォルトの名無しさん [2022/08/14(日) 12:50:22.70 ID:T9w5rPHY.net]
>>830
エラーは出ていいんよ
逆に握りつぶしちゃいけない
というかgetってなんのためにあるんだ?

try:
__dic[input()]:
____print('ある')

except KeyError:
__print('ねえわ')

except Exception as e:
__print(e.__class__.__name__)

外部入力受け付けるのって鬼門なんでこういう感じで書きたい
keyerrorは想定できるし、別の意図してないエラーも拾いたいだしょ

866 名前:デフォルトの名無しさん [2022/08/14(日) 12:51:39.01 ID:T9w5rPHY.net]
>>833
しつれい
try:
dic[input()]
print(1)

867 名前:デフォルトの名無しさん [2022/08/14(日) 12:53:45.52 ID:A6qxvdf0.net]
>>830
その用途なら、getでもいいんじゃない?
>>832が言う様な違いはあるけれど、キーが不存在でNoneが返る場合と、キーが存在するが値がNoneの場合とを、区別する必要があるかどうか、考えて決めれば良いよ

868 名前:デフォルトの名無しさん mailto:sage [2022/08/14(日) 15:22:06.37 ID:nJs5efs8.net]
キーに階層があって、途中のキーがなかったりすることがある場合なんかだと、
区別する実益はあるかもしれんね
一応、.get('key', {}) なんて方法もあるけど

869 名前:デフォルトの名無しさん mailto:sage [2022/08/14(日) 15:22:39.42 ID:Gnb69e0i.net]
>>832
失礼しました。最初の例ですとおっしゃるとおりですね。内容まで取得するケースも想定してました。

>>833-835
ありがとうございます。要件などふまえ考えてみます

870 名前:デフォルトの名無しさん [2022/08/14(日) 16:52:51.09 ID:T9w5rPHY.net]
ああわかった

db['key1': 0, 'key2':0,,,]
if key1:
__print('ある')
else:
__print('ない')

こんときgetじゃないといかんのだな
あるいは

try:
__value = db[a'']
__print('ある')
except KeyError:
__print('ない')
except:
__print('未定義エラー')

871 名前:デフォルトの名無しさん mailto:sage [2022/08/14(日) 22:47:50.08 ID:549c+n4K.net]
Ruby の偽は、nil, false だけ。
これ以外は真

でも、Python, PHP, JavaScript などは、
各型に偽値がある。空文字列・空配列・空辞書など

だから、とんでもなくバグるし難しい。
すべての型の可能性を考えないといけない

文字列型・配列型・辞書型ならとか。
だから、TypeScript みたいな型チェックツールが作られた



872 名前:デフォルトの名無しさん [2022/08/14(日) 22:57 ]
[ここ壊れてます]

873 名前::22.86 ID:I2sSNpX6.net mailto: >>839
死ね
[]
[ここ壊れてます]

874 名前:デフォルトの名無しさん [2022/08/15(月) 09:22:07.96 ID:c1YCm0IS.net]
>>838
どういうこと?

875 名前:デフォルトの名無しさん [2022/08/15(月) 13:07:09.65 ID:RvdaGkLE.net]
>>841

dict['key'] = value

dict.get('key') = value

取得したvalueがFalseになるとき、つまり0とかNoneとか空白のとき
if dict['key'] is not True になる。値はあるにも関わらず
一方
if dict.get('key') is Ture なので、期待する挙動としてはgetのが正しい

値がダミー(0など)の辞書の用意とかありうるので

876 名前:デフォルトの名無しさん [2022/08/15(月) 14:06:42.23 ID:0GtlIRwB.net]
ああそういうことか
re.matchとかre.searchみたいなことをやりたいのか

辞書のキーがあるかないかbooleanの判定と値への処理は別の方がいいと思う
if 'key' in dでもKeyError処理はどっちでもいいけど

877 名前:デフォルトの名無しさん mailto:sage [2022/08/15(月) 15:15:52.94 ID:gMKahu5b.net]
>>842
keyに対するvalueが0やNoneの時に
dict.get(key) is Trueにはならんやろ

dict.get(key, [default])を使うのは
keyに対応する値がデフォルト値の場合と
keyに対応する値が無くてデフォルト値が返される場合を同じように処理したい時だけ

bool判定したいならin演算子
KeyError使うのはkeyが存在しない状況が例外的な場合

878 名前:デフォルトの名無しさん [2022/08/15(月) 15:38:01.56 ID:RvdaGkLE.net]
>>844
ありゃならんな
これはすまん。なんか勘違いしとった。

stackoverflow why dict.get(key) instead of dict[key]?
参照

879 名前:デフォルトの名無しさん [2022/08/15(月) 19:52:08.21 ID:KlKo2Eqq.net]
わざわざメソッドとして用意されるほどの価値がないんだよなあ
2時代は重宝したのかな

880 名前:デフォルトの名無しさん mailto:sage [2022/08/15(月) 20:37:42.59 ID:Xxg2cjph.net]
if (val := dic.get(key)) is not None:
は使うけどな

881 名前:デフォルトの名無しさん mailto:sage [2022/08/16(火) 04:15:40.22 ID:MkpTU7zo.net]
次のコードがあります
h=[[[]]]*10
h[0].append([0,0])
理想としては
>[[[], [0, 0]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]], [[]]]
となってほしいのですが、現実は
>[[[], [0, 0]], [[], [0, 0]], [[], [0, 0]], [[], [0, 0]], [[], [0, 0]], [[], [0, 0]], [[], [0, 0]], [[], [0, 0]], [[], [0, 0]], [[], [0, 0]]]
となってしまいます
どうしたら理想の形になるでしょうか?



882 名前:デフォルトの名無しさん mailto:sage [2022/08/16(火) 07:26:37.30 ID:GKkpSlmU.net]
内包表記使って初期化

883 名前:デフォルトの名無しさん [2022/08/16(火) 08:04:39.39 ID:9vnyTUy7.net]
[[[], [0, 0]] if i == 0 else [[]] for i in range(10)]

884 名前:デフォルトの名無しさん [2022/08/16(火) 08:06:35.47 ID:9vnyTUy7.net]
h=[[[]] for i in range(10)]
h[0].append([0,0])

885 名前:デフォルトの名無しさん [2022/08/16(火) 11:31:22.44 ID:2x3mrzZQ.net]
要件後出しまくりとか
ゴールポスト移動させまくりとか
チョンメンタルの香具師とは付き合いたくないな

886 名前:デフォルトの名無しさん mailto:sage [2022/08/17(水) 13:20:06.97 ID:5W303LUa.net]
差別主義者で今どき香具師とか使ってるジジイとか逆に誰も付き合いたくないだろ

887 名前:デフォルトの名無しさん [2022/08/17(水) 16:37:01.73 ID:tMNGLQPx.net]
pandas のread_excelで式が入っている箇所の値を計算値ではなく、
整形されたテキスト値の方を取りたい場合はどうしたら良いのでしょうか?

数値で6.6がテキスト値として”7”として表示されている”7”の方の値をとりたいです。

888 名前:デフォルトの名無しさん mailto:sage [2022/08/17(水) 18:19:41.22 ID:8E4xUz8+.net]
>>854
Excelファイル内のデータとしてあるのは数値の6.6だけで
文字列の7という値はデータとしてファイルには存在しないので
直接読み取るのは無理

read_excelでdtypeやconverterを指定して数値の6.6を文字列の7に変換するか
一旦dfに読んでから変換するか

889 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 04:13:52.58 ID:OEqoy/Kx.net]
0.00000001から10000.xxxxくらいまで取り得るfloatの変数を、数字の表記で文字列に

890 名前:変えたいのですが、
str()だと、0.0001未満の値が"1e-05"のような指数表記になってしまいます
一方f-string(format)だと、".8f"等で全桁表記はできますが、小数点以下が常に8桁で0で埋められてしまいます
(例 0.00001→0.00001000)
末尾には余計なゼロは付けず、かつ指数表記にならない形でfloatを文字列にする簡単な方法はありますか?
rstrip('0')など使って余計なゼロを処理するしかないでしょうか?(この場合、100.0などのゼロは削除できないので判定が必要そうで単純にはいかなそうですが)
[]
[ここ壊れてます]

891 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 08:18:05.71 ID:cEC5FUVy.net]
>>856
numpy.format_float_positional
ググったらすぐ出て来た



892 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 08:58:00.71 ID:8X5QyRnM.net]
>>855
ありがとうございます。やはりできないのですね。
オプション探してみましたがそれらしいものがなかったので。
場所ごとに与えられた式が同じとは限らないので、
エクセル側で読み込み用の文字列を作成することにしました。

893 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 16:36:53.18 ID:Sofq2Da+.net]
条件分岐について質問です
3の倍数であるかどうかを判定する関数func1()とfunc2()を書いたのですが、
どちらの書き方のほうが良いでしょうか?
https://paiza.io/projects/mbEoYGp5wy7cU2oqpoTLbA

894 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 16:40:44.96 ID:s/eA3jUD.net]
当然1

895 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 16:48:56.73 ID:X/mZUHYK.net]
>>859
3の倍数が例外的な事象と言う事を表現したいならワンチャン2の可能性もあるかも

896 名前:859 mailto:sage [[ここ壊れてます] .net]
回答ありがとうございます

なぜfunc2()の書き方はあまり良くないのでしょうか?
よろしければ理由も教えて貰えるとありがたいです

897 名前:デフォルトの名無しさん [2022/08/18(木) 17:56:26.08 ID:GYRCxwaB.net]
すべてのnumは3の倍数かそうでないかのどちらかである、つまり必ずどちらかの処理が実行される事が一目で理解できる点ではfunc1がベター
一方で3の倍数の時は処理を行わず早期リターン、3の倍数でない時は長い処理を行う、といった場合はfunc2

898 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 18:55:31.69 ID:Rcho8+Nh.net]
いや、return入れるならelseのときもreturnしろよ
両方入ってるなら2でもいいと思うけど、片方だけ終わらせるために入れるなら関数なのかサブルーチンなのかわからんからダメだろ

899 名前:859 mailto:sage [2022/08/18(木) 19:10:48.59 ID:Sofq2Da+.net]
>>863
なのでこの場合はfunc1()なんですね
ありがとうございました

900 名前:859 mailto:sage [2022/08/18(木) 19:15:55.23 ID:Sofq2Da+.net]
>>864
コードはなるべく短い方がいいと思ったので使わなくて済むところでは使いませんでした
関数なのかサブルーチンなのか分からないと駄目とはどういうことですか?

901 名前:デフォルトの名無しさん [2022/08/18(木) 20:03:27.19 ID:Ly249j22.net]
こっちのが好き

def is_multiple(num): return num%3 == 0



902 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 21:14:57.76 ID:uWlfhjm8.net]
>>864
アラカン先輩ちぃーすっ

903 名前:デフォルトの名無しさん mailto:sage [2022/08/18(木) 21:32:20.64 ID:49aIw1a5.net]
>>867
判定処理と判定結果を表示する処理を分離しましょうという意味では同意する

けどis_multipleという関数名で3の倍数かどうか判定されるのは違和感しかない

じゃどういう名前にするのがいいかと考えると判定処理をわざわざ関数化するほどではないんじゃないかという気がする

904 名前:デフォルトの名無しさん [2022/08/19(金) 03:09:01.80 ID:FK1lT4BX.net]
def b_is_multiple_of_a(a: int, b:int): return bool(b % a == 0)

if b_is_multiple_of_a(a=5, b=10):
__print('可読性低すぎる')

905 名前:デフォルトの名無しさん [2022/08/19(金) 11:27:50.19 ID:scgMDta4.net]
アーリーリターンは何も珍しい

906 名前:アと時や無い []
[ここ壊れてます]

907 名前:デフォルトの名無しさん [2022/08/19(金) 11:28:55.77 ID:scgMDta4.net]
>>870
関数改行すんならifも改行すんなよ

908 名前:デフォルトの名無しさん [2022/08/19(金) 11:30:34.29 ID:scgMDta4.net]
しないなら

909 名前:デフォルトの名無しさん mailto:sage [2022/08/19(金) 18:24:24.93 ID:opjWCie4.net]
def func3(n):
p = 0
while n > 0:
p += n % 10
n //= 10
return not (p % 3)

910 名前:デフォルトの名無しさん mailto:sage [2022/08/20(土) 10:11:04.26 ID:FuR2a/w3.net]
>>710
https://github.com/opencv/opencv/issues/22088

4.6.xは色々ダメポ

911 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
a = [1,2,3,4,5]
b = [2,3,4,5,6]
c = []

for i in range(5):
c.append(a[i] + 2*b[i])

こういうのをリスト内包表記で書くのは無理でしょうか



912 名前:デフォルトの名無しさん mailto:sage [2022/08/20(土) 23:35:43.31 ID:mymTDVML.net]
aとbの要素数が同じだったら[i+2*j for i,j in zip(a,b)]でいけね?

913 名前:デフォルトの名無しさん [2022/08/20(土) 23:38:46.37 ID:cHNXWuBU.net]
c=[x+2*y for x,y in zip(a,b)]

914 名前:デフォルトの名無しさん mailto:sage [2022/08/20(土) 23:39:36.80 ID:mymTDVML.net]
普通にrangeでも
c=[a[i]+b[i] in i for range(5)]でできるかな

915 名前:デフォルトの名無しさん [2022/08/21(日) 01:03:28.95 ID:uqbZs7r8.net]
どうでもいいけど
c = [i + (j * 2) for i, j in zip(a, b)]
と書きたいな俺は
# (1*i) + (2*j) のようなときのみ(2*j)でも可
# 計算スタックは()でくくる
初心者のうちは特に気をつけたい。動けばいいやんは動かなくなる原因になる

916 名前:デフォルトの名無しさん [2022/08/21(日) 01:23:15.12 ID:m1bd5huk.net]
>>876
好きなのを選び多摩へ
c = [(a+1) + (b+2)*2 for a,b in enumerate([i for i in range(5)])]
c = [(a+1) + b*2 for a,b in enumerate([i for i in range(2, 7)])]
c = [a + 2*b for a,b in zip([i for i in range(1,6)],[j for j in range(2,7)])]

917 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 01:38:11.30 ID:X34OpE8X.net]
ありがとうございます!

918 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 06:47:07.90 ID:SCvvVl9f.net]
def main(argv: Sequence[str]) -> None:


これってどういう意味というか、なにがやりたいんですか?

def main(argv):
ならmainにargvを渡すだけで分かりやすいんですが

919 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 10:46:46.24 ID:1U/+Hx4a.net]
>>883
型ヒントっていうヤツでしょ
おじさんはもう新しいこと覚える気力ないから
どういう機能かは自分でググってくれ

920 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 10:59:40.26 ID:LqJQ4HOS.net]
>>883
argvの型がstrのシーケンスで戻り値の型がNoneってこと
シーケンスはlistやtupleのように長さが事前に分かってて各要素にインデックスで直接アクセスできるようなコレクションの総称

921 名前:デフォルトの名無しさん [2022/08/21(日) 13:04:30.41 ID:j3ukytx2.net]
そこまで型ゴリゴリにするならpythonじゃなくても(じゃない方がむしろ)良いと思うから
放置してる



922 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 13:07:09.50 ID:JM/HSGoB.net]
>>884
型ヒントでググりました
注釈だそうですね
要するにいらないんじゃないか!

923 名前:デフォルトの名無しさん [2022/08/21(日) 14:03:22.39 ID:uqbZs7r8.net]
型ヒント(と開発環境)があると作業効率がずっと上がる
https://imgur.com/jtSAuu4.png
型ヒントのない世界は無
https://imgur.com/BuL77EC.png

オジジでもない限り、初学者は型ヒントつけるクセつけてったほうが
大きいコード書くようになったときなんかに助かるで

924 名前:デフォルトの名無しさん [2022/08/21(日) 14:29:46.94 ID:j3ukytx2.net]
そこでハンガリアンですよωωω=2πf

925 名前:デフォルトの名無しさん [2022/08/21(日) 14:38:59.74 ID:jAGl7lqb.net]
実際使ってみると、版画リアンはものすごく楽。
名前というものは被るように出来てるものらしい。
とはいえ推奨はしない。

926 名前:デフォルトの名無しさん [2022/08/21(日) 14:45:29. ]
[ここ壊れてます]

927 名前:71 ID:HDFqY1eo.net mailto: Pythonでローカルサーバーを立ててhtmlの確認をしたいのですが、SSIを使いたいため、以下のスクリプトを使用しています。
https://github.com/danvk/ssi-server/blob/master/ssi_server.py
GITからクローニングして、MacOS + python 3.10.5で動作確認させたところ問題なく動きました。
Windows10 + Python 3.10.5で実行すると、localhostへのアクセス時に文末のエラーが出て動きません。
同一のクラウド上のファイルを参照して実行しています。GITからはMacで落としましたが、改めてwindowsで落としても同じでした。
MacOSでは動いているのでWindowsの環境なのかと思いつつ、何が原因かわからずにいます。
アドバイスください。

------エラー文章--------
Exception occurred during processing of request from ('::1', 58693, 0, 0)
Traceback (most recent call last):
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\socketserver.py", line 683, in process_request_thread
self.finish_request(request, client_address)
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\socketserver.py", line 360, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "C:\Users\UserName\iCloudDrive\web\ssi_server.py", line 37, in __init__
SimpleHTTPRequestHandler.__init__(self, request, client_address, server)
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\http\server.py", line 651, in __init__
super().__init__(*args, **kwargs)
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\socketserver.py", line 747, in __init__
self.handle()
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\http\server.py", line 425, in handle
self.handle_one_request()
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\http\server.py", line 413, in handle_one_request
method()
本文長すぎの為続きは次に書きます
[]
[ここ壊れてます]

928 名前:デフォルトの名無しさん [2022/08/21(日) 14:46:16.53 ID:HDFqY1eo.net]
続きです。


File "C:\Users\UserName\iCloudDrive\web\ssi_server.py", line 40, in do_GET
SimpleHTTPRequestHandler.do_GET(self)
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\http\server.py", line 655, in do_GET
f = self.send_head()
File "C:\Users\UserName\AppData\Local\Programs\Python\Python310\lib\http\server.py", line 679, in send_head
path = self.translate_path(self.path)
File "C:\Users\UserName\iCloudDrive\web\ssi_server.py", line 57, in translate_path
content = ssi.InlineIncludes(fs_path, path)
File "C:\Users\UserName\iCloudDrive\web\ssi.py", line 31, in InlineIncludes
content = open(path).read()
UnicodeDecodeError: 'cp932' codec can't decode byte 0x84 in position 1163: illegal multibyte sequence
----------------------------------------

929 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
GITって何て読むの?
じっと?ぎっと?

930 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 15:41:28.40 ID:gzL+j7A8.net]
kit
git

931 名前:デフォルトの名無しさん [2022/08/21(日) 15:50:29.96 ID:Tt3lkFsn.net]
>>888
え、上が当たり前の感覚なんだけど
昔の人は下の状況でどうやってコード書いてたの? 引数とかオプションとかメソッドとか
ソースあたったりdir連打?



932 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 15:50:38.42 ID:tAy7F/Zf.net]
>>892
たぶんこれでいけるんじゃね
content = open(path, encoding = "utf-8").read()

933 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>888
その比較は型ヒント関係ないやろ

934 名前:デフォルトの名無しさん [[ここ壊れてます] .net]
>>895
help

935 名前:デフォルトの名無しさん [[ここ壊れてます] .net]
>>896
ありがとうございます。
まだ上手く直せていないのですが、試していたらindex.htmlに日本語があるとWindowsではエラーが出ることがわかりました。
ssi_server.py、ssi.pyで正しく日本語を読むようにすればいいということでしょうか。

936 名前:デフォルトの名無しさん [[ここ壊れてます] .net]
>>896
ssi.pyの31行目を教えていただいたものに書き換えても駄目でした。。。
他に試してみることがあればぜひ教えてください。お願いします。

937 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
tensorflow Liteというのがあって、int8とかでTPU使うと計算が速いらしいのですが、調べても使い方が複雑すぎていまいちよくわかりません
初心者にもわかりやすくまとまってるサイトはありま

938 名前:ケんか?
もしくはどなたかが簡潔にまとめていただけると助かります
[]
[ここ壊れてます]

939 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
どこまで分かってるか分かってないか書いたほうがいいです

940 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 17:32:33.39 ID:4RZQsnIa.net]
>>902
converter = tensorflow.lite.TFLiteConverter.from_saved_model(export_dir)
tflite_model = converter.convert()
とすれば変換できるみたいですが、まずtensorflow.lite.TFLiteConverterがありません
私の環境ではtensorflow.python.lite.TFLiteConverterかなと思いましたが、ありません
tensorflow.lite.pythonにTFLiteConverterではなくtflite_convertがあるのを見つけました
tflite_convert.dtypes.int8というのが存在するので、これを設定すればいいのかなとは思うのですが
あと何したらいいのか見当がつきません

941 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 17:50:14.70 ID:y+zMOwhn.net]
>>899
index.htmlは何の文字コードで保存されてるの?
Linuxで動いてるのと同じならUTF-8だと思うけど、Windows側で弄った時に文字コード変わってると
ややこしいから確認したい



942 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 17:56:00.04 ID:y+zMOwhn.net]
>>900でもそうだけど
ダメだった時に同じエラーが出たのか、違うエラーが出たのかははっきり書いた方が良い
エンコーディング指定をこれにしても同じ結果になる?
content = open(path,encoding='utf-8_sig').read()

943 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 18:09:49.63 ID:YEW47Y5U.net]
ウェブ系など、すべてのシステムはUTF-8

でも、Windows だけは、CP932(shift-jis)。
5ch も、sjis だけどw

こういうシステムは普通はない

944 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 18:14:09.27 ID:YEW47Y5U.net]
>>892
の最後の行に書いてある

>UnicodeDecodeError: 'cp932' codec can't decode byte 0x84 in position 1163: illegal multibyte sequence

UnicodeDecodeError: 'cp932'
cp932 でしょ?

945 名前:デフォルトの名無しさん [2022/08/21(日) 18:17:56.59 ID:HDFqY1eo.net]
>>904-905
content = open(path,encoding='utf-8_sig').read()
で解決しました!
index.htmlはUTF-8で保存されていました。
後学のために単にutf-8だったときのエラーメッセージと元のエラーメッセージの比較をしようと思ったのですが、
utf-8指定でも動作するようになってしまって、その点はよくわからずでした。
(最初のときは違う行に書いてしまったかもしれません)

レベルが低くせっかく即答いただいたのに手間取ってすみませんでした。ありがとうございました。

946 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
今日初めてPython落としました!
何からやったらいいのかな?

947 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
まずは交番に問い合わせ

948 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
ニシキヘビ属(Python)は、爬虫綱有鱗目ニシキヘビ科(ボア科ニシキヘビ亜科とする説もあり)に属する属。ニシキヘビ科の模式属。

949 名前:デフォルトの名無しさん [2022/08/21(日) 21:56:34.82 ID:uqbZs7r8.net]
class Foo():
__def __init__(self, bar:Bar):
____self.bar = bar

他のクラスのインスタンスをselfで受けるのって慣習ですか?
特に必要なければしなくてもよい?

950 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 22:08:55.27 ID:pxrRhRxl.net]
>>912
質問の意図がよく分からない

FooのインスタンスがBarのインスタンスに依存してて
コンストラクタで依存するインスタンスを受け取って参照を保持しておきたいというのがそのコードの意味

951 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 22:36:44.36 ID:m1bd5huk.net]
ちんちんシュッシユ



952 名前:デフォルトの名無しさん [2022/08/21(日) 22:37:39.35 ID:uqbZs7r8.net]
>>913
fooはインスタンス生成時点のbarのインスタンス情報が要るけど
生成後は要らない、他のメソッドで使わないとき、self.barで保持する必要がないと思うんだけど、そういうコードあんまり見たことないなーと思って

def Foo():
__init(self, bar):
____x = bar.baz[0] * 2
____self.calc(bar.data)

とかでいいときもあると思うんだけど
だいたいインスタンス変数にするだしょ
なんか理由あんのかなっていう

def Foo():
__init(self, bar):
____self.bar = bar
____x = self.bar.baz[0] * 2
____self.calc(self.bar.data)

953 名前:デフォルトの名無しさん [2022/08/21(日) 23:00:36.99 ID:sTNlugjb.net]
何見たのか知らないけど保持する必要がない

954 名前:ならインスタンス変数にする必要ないね []
[ここ壊れてます]

955 名前:デフォルトの名無しさん mailto:sage [2022/08/21(日) 23:15:46.41 ID:YEW47Y5U.net]
is-a・継承・一種じゃなくて、has-a・包含・部品化でしょ

Foo は、Bar という部品を持っている

956 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 07:03:46.35 ID:nh7qwDlg.net]
どなたか>>903わかりませんか?

957 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 08:53:29.31 ID:/DEJsMLY.net]
>>915
> とかでいいときもあると思うんだけど
だいたいインスタンス変数にするだしょ

ルールも慣例もないから君がみた例がそうだっただけ
ただコンストラクタで受けるとき普通はクラス全体として依存するからインスタンス変数で受けることが多いね

まだはやいと思うけどコード設計レベルの話だと、依存しない型をコンストラクタ引数に持つのは余計な情報を含み生成コストが高くなるから、本当に必要な情報だけコンストラクタで渡すか、ファクトリメソッド(staticmethodかクラス外のただの関数)を経由すると良い

958 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
>>903
>まずtensorflow.lite.TFLiteConverterがありません
Python 3.10 にtensorflow入れて確認したけど、あるよ
ちなみにtensorflow のバージョンは2.9.1

959 名前:デフォルトの名無しさん mailto:sage [[ここ壊れてます] .net]
統一教会は半島人の醜さを如実に表してる

960 名前:デフォルトの名無しさん [2022/08/22(月) 14:10:57.26 ID:KX6mg0Ol.net]
質問が既に触っちゃいけない人レベルだと答える気も起きない

961 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 17:08:51.25 ID:vrjH2pLG.net]
>>920
こちらは2.11.0と出ました
こんな感じです
どっとup.org/uploda/どっとup.org2859768.png



962 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 17:09:07.20 ID:vrjH2pLG.net]
あ、Pythonは3.10.6です

963 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 18:48:00.04 ID:KAheMTvm.net]
ちなみに、tensorflow.kerasも、tensorflow.python.kerasになってます

964 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 19:13:09.43 ID:YpfCjhrS.net]
>>924
こちらはIDLEでやってるけど、そちらは何でやってるの?

>>>import tensorflow as tf
>>>tf.lite.TFLiteConverter
<class 'tensorflow.lite.python.lite.TFLiteConverterV2'>

と出るから、あなたの環境?ではtensorflow.lite.python.lite.TFLiteConverterV2 でできるかも?

965 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 19:19:54.92 ID:mGTda2af.net]
>>926
おおお、なんか出ました!!!
ちなみにVSCodeです
これをTFLiteConverterだと思って使えばいいんですね
ありがとうございます

966 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 19:38:48.82 ID:YpfCjhrS.net]
ふぅ〜〜、、また迷える子羊を救ってしまったオレはメシア! >>922はウンコ!!

967 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 19:44:46.61 ID:7dOE9g6n.net]
×触っちゃいけない
〇自分のレベルでは触れない

968 名前:デフォルトの名無しさん mailto:sage [2022/08/22(月) 20:41:16.68 ID:xuCaDQYT.net]
(悪い)

969 名前:デフォルトの名無しさん mailto:sage [2022/08/23(火) 07:46:45.41 ID:AXaElLrn.net]
かっこ悪い

970 名前:デフォルトの名無しさん mailto:sage [2022/08/23(火) 11:45:38.02 ID:C7QGzGi8.net]
(インテグラ)

971 名前:デフォルトの名無しさん mailto:sage [2022/08/23(火) 15:21:34.49 ID:VG0bs36n.net]
Python的にはタプル



972 名前:デフォルトの名無しさん [2022/08/23(火) 18:20:21.00 ID:QvfGPIA0.net]
スクレイピングの勉強でも始めようと思って
FANZAから持ってるエロゲーのデータ取得しようと思ったけど「18歳以上ですか?」のページに飛ばされるからうまくいかないんだよな

それでぐぐってみたらちゃんと回避する方法も載っててさすがエロは人類の英知だなって

973 名前:デフォルトの名無しさん [2022/08/23(火) 18:21:32.45 ID:QvfGPIA0.net]
で、もしかして商品データのAPIとかあるんじゃないかと調べたら普通にあるじゃん
FANZAでAPIの使い方も学べてしまうわけだ

974 名前:デフォルトの名無しさん mailto:sage [2022/08/23(火) 21:00:11.70 ID:zoEAEgny.net]
プログラムが<b></b>で囲まれてるのがあるんですが、どういう意味がありますか?

975 名前:デフォルトの名無しさん mailto:sage [2022/08/24(水) 11:40:37.72 ID:GCuLQfVh.net]
def mySort(x):
_return x-n

ary=sorted(ary,key=mySort)

上記の様なソートで

976 名前:mySort関数に別の引数(n)を
与えたい場合はどのようにすれば良いのでしょうか?
[]
[ここ壊れてます]

977 名前:デフォルトの名無しさん [2022/08/24(水) 11:40:54.28 ID:GCuLQfVh.net]
age忘れたのでageます

978 名前:デフォルトの名無しさん mailto:sage [2022/08/24(水) 12:06:03.74 ID:nMDP5IX7.net]
>>936
<b></b> は、HTML のタグ。bold・太字

979 名前:デフォルトの名無しさん mailto:sage [2022/08/24(水) 13:10:02.55 ID:Q8Mi5AsJ.net]
>>937
functoolのpartialとか
lambdaでclosureとか

980 名前:デフォルトの名無しさん mailto:sage [2022/08/24(水) 13:42:19.22 ID:GCuLQfVh.net]
>>940 ありがとうございます。以下のような感じでいけました。
def sortX(n):
_def sub(x):
__return x-n
_return sub
ary=sorted(ary,key=mySort(5))

981 名前:デフォルトの名無しさん mailto:sage [2022/08/24(水) 13:44:20.36 ID:GCuLQfVh.net]
どうでもいいけど、sortX(n)はmySort(n)でした



982 名前:デフォルトの名無しさん mailto:sage [2022/08/24(水) 17:14:42.06 ID:MmGWx16i.net]
比較関数の名前はmyCmp()とかの方がよくないか

983 名前:デフォルトの名無しさん mailto:sage [2022/08/24(水) 18:49:27.66 ID:9+/sji0l.net]
比較関数そのものじゃないのでgen_my_cmpとかに死体

984 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 11:52:57.48 ID:fZ4fACWe.net]
floor が「切り捨て」なのはどういう意味なんだろう?
建物の「階」において、たとえば「2.5階」の高さがあったとしてもそれは2階の範疇、という理解でいいのか?

985 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 12:17:01.44 ID:t8dBENVC.net]
>>945
まぁ…ある意味?floorは床(底)、ceilは天井。金融でも
動詞だと倒す、床に押しつける的な意味合いも持つようだね

986 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 12:18:32.67 ID:07FV37Yy.net]
>>945
ガウス記号って学校で習わなかったのか?

987 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 12:35:27.45 ID:T8QO1Ud9.net]
習ったかもしんないけど、習った時以外に使ったことないな

988 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 19:50:52.48 ID:JQLsrPvi.net]
フレームワークスレ動いてないのでここで

jinja2のmacroって1つのmacroにつき1ファイル必要ですか?
便利だけど結構なファイル量になりそう

989 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 19:53:38.52 ID:JQLsrPvi.net]
できそうですね
自決しましたすみません

990 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 22:12:05.52 ID:onQDGrDv.net]
潔い最期であった

991 名前:デフォルトの名無しさん mailto:sage [2022/08/25(木) 23:23:20.07 ID:11s99DpV.net]
ヒットアンドブローを書いてみました
ここは直した方がいい、って箇所がありましたら教えて頂きたいです
よろしくお願いします

https://paiza.io/projects/V9PHgwFh2EAyhgA2PxxUbQ



992 名前:デフォルトの名無しさん [2022/08/25(木) 23:48:36.58 ID:C7eFIied.net]
3文字以下を入力したらエラー

993 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 04:59:27.97 ID:8E2pwf5q.net]
>>952
数値チェック、桁数チェック、重複チェック追加
blowの計算が違う
2重ループの変数がすべてiなのはややこしい
answer_list、input_list、リストにするメリットを感じない

994 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 05:00:05.01 ID:8E2pwf5q.net]
import random
answer_list_int = []
while len(answer_list_int) < 4:
____random_number = random.randint(0, 9)
____if random_number not in answer_list_int:
________answer_list_int.append(random_number)
answer_str = "".join(map(str, answer_list_int))
print('''\
数当てゲームをします!
4桁の重複しない数字を当てて下さい!
入力のチャンスは7回までです
'終了する場合はexitと入力して下さい
''')
for i in range(7):
____while True:
________input_number_str = input(f'{i + 1}回目 4桁の重複しない数字を入力して下さい->')
________if input_number_str == 'exit' or (len(input_number_str) == 4 and input_number_str.isdecimal() and len(set(input_number_str)) == 4):
____________break
____hit = len([j for j in zip(input_number_str, answer_str) if j[0] == j[1]])
____if

995 名前:input_number_str == 'exit':
________break
____print(f'hitは{hit}です!')
____if hit == 4:
________print('クリアです!おめでとう!')
________break
____print(f'blowは{len(set(input_number_str) & set(answer_str)) - hit}です!\n')
if hit != 4:
____print(f'残念!当たりは{answer_str}でした!')
[]
[ここ壊れてます]

996 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 07:33:07.60 ID:90ir5d7g.net]
また人形遊びか

997 名前:デフォルトの名無しさん [2022/08/26(金) 10:37:48.28 ID:i2SIEm4o.net]
つまらんな
人間が出題してPC(または鯖)に解かせるhit&blowを描け

998 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 14:03:10.97 ID:b48ovCTY.net]
重複しないならシャッフルして作る方が好み
こんな感じの
answer_list_int = random.sample(range(10),10)[:4]

>>955
細かい事だけど
isdecimal()って全角数字もTrueになりそうな

999 名前:952 mailto:sage [2022/08/26(金) 15:53:44.20 ID:YT1F4ulB.net]
レスありがとうございました!
いろいろ改善してみたいと思います

1000 名前:952 mailto:sage [2022/08/26(金) 18:09:23.80 ID:YT1F4ulB.net]
修正しました
ややネストが深くなってしまいましたが

https://paiza.io/projects/nUxI-yeQLIlZSBGA4dmcKA

1001 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 19:10:15.58 ID:8E2pwf5q.net]
>>960
自分のスタイルで書けばいいと思うけど最終行はいかがなものか
print(f'\n残念!当たりは{"".join(answer_list)}でした!')



1002 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 21:56:17.10 ID:qaneYf7D.net]
標準ライブラリだけで、ローカルタイムゾーンのoffset値だけ取得したい(日本なら+9みたいな)のですが、直接取得できる方法などありますか?

1003 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 22:05:56.45 ID:Iy9DcYfZ.net]
マニュアル読め

1004 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 22:40:57.28 ID:qaneYf7D.net]
time.timezone / 3600
(→Asia/Tokyoだと -9 になる)
が一番簡素ですかね

1005 名前:952 mailto:sage [2022/08/26(金) 22:50:13.39 ID:YT1F4ulB.net]
>>961
ありがとうございます

もう1つだけどうしても気になる箇所があるのですが、
>>960の21行目で定義しているinput_number_strを、無意識のうちに
for文の外で使っちゃってるのですが、なぜエラーにならないのですかね?
Pythonではブロックは無視していい仕様なんですか?

1006 名前:デフォルトの名無しさん mailto:sage [2022/08/26(金) 23:41:59.18 ID:8E2pwf5q.net]
>>965
関数ブロック(def/lambda)だけ考えればいい

1007 名前:952 mailto:sage [2022/08/27(土) 00:45:11.54 ID:eQp61XjW.net]
>>966
すごい仕様ですね、ちょっと受け入れるのに時間かかりそうです
ありがとうございました

1008 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 10:36:29.81 ID:iQeLdPnf.net]
SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame
See the caveats in the documentation:
えいちちーぴーえす://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy

これはどうしろとおっしゃっているのですか?
data['column'][i]=(2**x)
こういう式に文句言われたんですが

1009 名前:デフォルトの名無しさん [2022/08/27(土) 11:13:27.05 ID:WyESGIww.net]
その警告文で検索したら秒で解決するけど、しなかった?

1010 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 11:33:42.24 ID:z31K+Zx9.net]
pd.set_option('mode.chained_assignment', None)

1011 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 13:32:06.26 ID:BTzbpX5q.net]
よくまとまってる
https://www.dataquest.io/blog/settingwithcopywarning/
https://linus-mk.はてぶろ.com/えんとり/2019/02/02/200000
https://linus-mk.はてぶろ.com/えんとり/2019/03/14/235402
https://linus-mk.はてぶろ.com/えんとり/2019/05/18/161328



1012 名前:デフォルトの名無しさん [2022/08/27(土) 14:42:22.60 ID:n5VuK+5f.net]
奥が深い


1013 名前:タズブズブ []
[ここ壊れてます]

1014 名前:ややや mailto:vision_xxx@icloud.com [2022/08/27(土) 20:00:28.28 ID:IQqR6XHY.net]
https://qiita.com/mimuro_syunya/items/2464cd2404b67ea5da56

上のサイトを参考にしてジュピターノートブックからサイトの最後の方にあるソースコードをコピペして最後の3行をGetメソッドで指定したURLに飛びませんでした。
最後の3行を変更せずにやっても出来ませんでした!

上記のサイトの実行コマンドをbotファイルにするくだりはやってます。

目立ったエラーなどは現在無いです。


ブラウザ立ち上げた後にそのまま処理を行うにはどうすれば良いでしょうか?

1015 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 21:29:38.61 ID:RK2Xjm2V.net]
日時と得点からなる表Aがあったとします
最高得点が更新された履歴の表を作りたいです
Aの各要素にその日時より古い日時のAの全要素をouter joinかmergeでくっつけて、
くっつけた表の部分をgroupbyしてmaxを求め、
各要素の得点とmaxの得点が一致しているものだけをselectしたいのですが、
SQLならできるのにpandasではやり方がいまいちわかりません
普通にmergeしただけだと共通項があるものしかくっつけられないです
どう書けばいいか教えてください

1016 名前:デフォルトの名無しさん mailto:sage [2022/08/27(土) 22:11:52.80 ID:8j5Nb3+9.net]
>>974
日時の順にループで1行ずつ最高点を更新したかどうかを判定して
更新してれば新しい表に(日時, 得点)を追記していけばいいよ
O(n)なのでouter joinするやり方よりも断然効率的

1017 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 09:44:53.82 ID:my7A80XW.net]
history=model.fit(x,t,epochs=epochnum,batch_size=batchnum,callbacks=[checkpoint,lr])
この行を実行すると、
Epoch 101/2000
1/1 [==============================] - ETA: 0s - loss: 0.11/1 [==============================] - 0s 3ms/step - loss: 0.1453 - mae: 0.2880
Epoch 102/2000
1/1 [==============================] - ETA: 0s - loss: 0.11/1 [==============================] - 0s 5ms/step - loss: 0.1452 - mae: 0.2888
などと出てきてしまいます
・完全に黙らせる場合
・Epoch数だけ表示させる場合
どうしたらいいでしょうか?

1018 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 16:01:50.37 ID:kZD7TOdo.net]
自己解決しました
失礼しました

1019 名前:デフォルトの名無しさん [2022/08/28(日) 16:36:09.29 ID:q65Nt2bT.net]
解決法も書いてってや
後輩のために

1020 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 17:39:31.88 ID:ULmp/dD0.net]
失礼します
class内のメソッド宣言の際に、1つ目の引数にselfを必ず入れなければならない
理由や背景が何となくしか分かりません
それと、selfはJavaで言う所のthisと同じようなものと考えてよいですか?

1021 名前:デフォルトの名無しさん [2022/08/28(日) 17:47:12.52 ID:q65Nt2bT.net]
そう
別にthisでもいいよ。selfでなく



1022 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 18:48:06.80 ID:ScmkE54Q.net]
他のOSでの挙動は分からないけどWindows版Pythonで
socketのrecvで受信待機している時に他のpyファイルを動かすと動作が停止してしまいます
終了ではなく永遠に待機している感じ
recv中に例外エラーも出ないのですが対処法ありますか?

1023 名前:979 mailto:sage [2022/08/28(日) 19:22:25.55 ID:ULmp/dD0.net]
>>980
ありがとうございました

1024 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 20:31:29.47 ID:A7P8ZEj/.net]
40代未経験だがPython覚えればプログラマとして就職できる?

1025 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 20:42:53.44 ID:5PlXdxXB.net]
他の業務知識があれば出来るんじゃね?

研究者は無理やろ

1026 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 21:04:51.02 ID:K7gdf/So.net]
求人数はJavaとJavaScriptとPHPの方が多いのだわ
PythonはM

1027 名前:L系の求人が多いことを考えると
未経験から最初に業界に首をねじ込むための言語としては
あんまりおすすめせんのだわ
[]
[ここ壊れてます]

1028 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 21:05:19.00 ID:K7gdf/So.net]
あ、985が立てるのか…

1029 名前:デフォルトの名無しさん [2022/08/28(日) 21:25:02.87 ID:0hsZj3lg.net]
cudaで処理速度が20万倍っていうデータがあるんだけど
みんなはどれくらいの速度が適性だと思う?

1030 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 22:33:49.95 ID:gOapjWvD.net]
>>983
文系で未経験者の王道は、Ruby on Rails でポートフォリオを作って転職する

YouTube で有名な雑食系エンジニア・KENTA の初心者向けRailsサロンとか、
RUNTEQ、東京フリーランスのデイトラなど

かよちんchannel

【半年間使ってわかった】PythonのwebフレームワークDjangoを学ぶメリット・デメリット
www.youtube.com/watch?v=783JIyyyxMk

かよちんは未経験の大学生で、Railsでポートフォリオを作って就職した。
1年運用で働いたが、開発したかったので転職した。
転職先では、Django で開発している

彼女は、初心者にはDjangoよりも、Railsを勧めている

理系なら大学院数学科とか、
AWS Certified Machine Learning(機械学習) - Specialty の資格があれば強い

1031 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 23:01:16.78 ID:Uxqu4oWF.net]
>>970 はアカン例やろ



1032 名前:デフォルトの名無しさん mailto:sage [2022/08/28(日) 23:04:54.48 ID:n2t07jCF.net]
速ければ速いほどよい

1033 名前:デフォルトの名無しさん [2022/08/29(月) 14:20:05.87 ID:HM6f0MF8.net]
q="太郎君の年齢は?"
ans=12
ans2="十二"


while True:
try:
text=int(input(q))
if text==ans:
print("正解")
elif text==ans2:
print("正解")
break
except:
print("不正解")

これで12、十二とinputで入力すると正解と
それ以外だったら不正解で最初に戻ると進行するようにしたいのですが
12以外だと全部不正解になってしまいます

1034 名前:デフォルトの名無しさん mailto:sage [2022/08/29(月) 14:31:09.09 ID:IoynIqHg.net]
>>991
text=int(input(q))
でint型にキャストしようしてるんだから、例えば十二とか入れたら
文字列⇒数値へキャストできずに例外が発生してexcept:のルートに入っちゃうだろ

1035 名前:デフォルトの名無しさん mailto:sage [2022/08/29(月) 14:31:14.78 ID:lEy6aHnj.net]
せめて質問文らしく書こうな。
text = int("十二")
の結果が0だからだよ。
int()をなくして12も"12"に変更して、全て文字列で扱うようにすれば

1036 名前:デフォルトの名無しさん [2022/08/29(月) 14:35:17.73 ID:SW+mNQvs.net]
慣れないうちは簡単な書き方しよう
ごちゃごちゃ詰め込まない

while True:
__print ('年齢は?')
__ret = input()
__if ret == 12:
____print('ok')
____break
__elif ret == '十二':
__else:
____print('no')

if ret in [12, 12, '十二']
でもよい

1037 名前:デフォルトの名無しさん [2022/08/29(月) 14:38:41.17 ID:HM6f0MF8.net]
>>992-993
ありがとうございます
自分の場合まずint()からしてよく理解してなかったです

1038 名前:デフォルトの名無しさん [2022/08/29(月) 14:42:50.09 ID:SW+mNQvs.net]
うそ
ret = input()
ret in ['12', '12', '十二']
だわ

漢数字や全角ありうるならint型に変換しないほうがよいぬ

1039 名前:デフォルトの名無しさん mailto:sage [2022/08/29(月) 14:44:38.06 ID:eTTKQ396.net]
>>994
慣れないうちは動作確認しよう
エラーは詰め込まない

1040 名前:デフォルトの名無しさん [2022/08/29(月) 15:21:46.13 ID:XtVEyX62.net]
9+9+980

1041 名前:デフォルトの名無しさん [2022/08/29(月) 15:22:51.65 ID:XtVEyX62.net]
うめ



1042 名前:デフォルトの名無しさん [2022/08/29(月) 15:23:06.50 ID:XtVEyX62.net]
https://mevius.5ch.net/test/read.cgi/tech/1653540315/

1043 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 98日 16時間 57分 58秒

1044 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<284KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef