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

■ このスレッドは過去ログ倉庫に格納されています
2022/05/22(日) 22:25:08.74ID:/hGmbW/Z
当スレに★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公式◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi

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

次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###
2022/07/26(火) 11:06:35.56ID:Uy4U9BVa
goodボタンってどこにあるの?
2022/07/26(火) 11:37:39.45ID:PhJ4pIjK
精神病になるとそういうボタンが見えるらしいよ
2022/07/26(火) 12:16:00.10ID:k5BnME6W
こいつ上の方にいた日記帳キチガイだな
2022/07/26(火) 12:21:32.78ID:r5zklFsb
ハッタツしょう害なんじゃねえの
2022/07/26(火) 12:37:44.00ID:28W+mdVQ
>>547

英数字チェック完全版+セイウチ
[x for i in url.split("/dp/")[1:] or url.split("pd_rd_i=")[1:] if len(x:=i[:10])==10 and x.isascii() and x.isalnum()]
553デフォルトの名無しさん
垢版 |
2022/07/26(火) 12:44:17.32ID:IrL7txwd
・フリーランスに立ちはだかる「常駐」の壁。慣例を打ち壊し、
“テレワーク”案件3割→8割へと成長を遂げた「クラウドテック」の軌跡
・リモートワーク求人専門サイト「プロリモート」がリニューアルオープン、
 業務委託契約の求職者と企業をマッチング 
・1/3以上が採用につながる高マッチング率、リモートワーク×エンジニア・デザイナー専門の
 人材紹介サービス「ReworkerAgent」正式リリース場所からも時間からも自由な働き方を実現!
・『ReWorks(リワークス)』リモートワーク特化型転職サイトとして 3月5日 リニューアル
・副業・兼業マッチングサービス「クラウドリンクス」登録者数2万人突破
 中小企業で進む副業人材の採用、96%が継続採用を希望
・フリーランスが活用できる「最大1,000〜3,000万円・補助率50%〜75%」の
『ものづくり・商業・サービス補助金』とは?概要や条件を解説
・茨城県日立市、県外からの「テレワーク移住者」に最大151万円の助成金
・長野市、市内に移転・事業所設置し、移住することで最大550万円の支援金を支給
2022/07/26(火) 12:59:25.55ID:hxnsYVU0
>>552
すばらしい! これ以上は良くなりそうにないね
こうして見るとやはり正規表現の方がいい、仕様変更にもすぐ対応できるし
2022/07/26(火) 13:07:45.08ID:563vGs1S
ではこの話はこれで終わりです
2022/07/26(火) 13:15:56.15ID:hxnsYVU0
へ? ここで>>552が「実行速度では負けてないもんね!」つって速度勝負をしかけてきて
それならre.compileじゃぁあああって応戦してからの、やっぱ「速度じゃreは不利じゃわい」
つって、「いやいや、やはり正規表現さんの勝ちですわ、メンテナンス性では完敗ですもん」
ってお互いが歩み寄ってからの熱い握手で終幕やろうが! まあええわ次の話題もってこいや
557デフォルトの名無しさん
垢版 |
2022/07/26(火) 13:30:39.77ID:P5K5X/wN
ID:t+dBeaSp
ID:lkZCuVJ2
ID:Tcjxae6G
ID:hxnsYVU0
558デフォルトの名無しさん
垢版 |
2022/07/26(火) 16:43:34.40ID:gc9s0ohk
以上
今日の自演でした
559デフォルトの名無しさん
垢版 |
2022/07/26(火) 17:59:35.79ID:gc9s0ohk
>>492-494
秋葉で暴走した加藤は死刑完了したそうだ
2022/07/26(火) 18:59:47.50ID:aND0EYYo
python使いやすくていいわーって思ってたけど
json使ったら面倒だなと思った…
これ自分で辞書にしたり戻したりしないといけないわけ?
pickleちゃんはバイナリになるからやだ
2022/07/26(火) 19:06:35.62ID:QBs9x9BG
>>559
あの事件で大学の同級生死んじゃったよー……。執行まで長かったなー
2022/07/26(火) 19:40:58.02ID:Uy4U9BVa
まじかよ
東大近いもんな
優秀な人を亡くすのは実に惜しい
2022/07/26(火) 19:44:17.06ID:QBs9x9BG
>>562
は?東大生死んでないが?
2022/07/26(火) 19:44:58.50ID:Sr1olQPp
while True:
 わーいPython便利だなー
 あれ?このXを扱うのってめんどくさくね?
 他の言語にしよっと
 X以外がめんどくさすぎる!
2022/07/26(火) 19:57:04.85ID:hxnsYVU0
>>560
じゃあyamlちゃんは?
https://www.youtube.com/watch?v=rpbq6vXcNbM
566デフォルトの名無しさん
垢版 |
2022/07/26(火) 20:47:35.71ID:GQvz79KS
Jsonって殺人鬼だったのに。
2022/07/26(火) 21:16:10.07ID:OUnIdkcH
全損
568デフォルトの名無しさん
垢版 |
2022/07/26(火) 22:30:48.06ID:Rgm2Z23r
>>560
これってどういうこと?Pythonのオブジェクトに変換せずに何かをやりたいっていうこと?
2022/07/26(火) 23:43:27.38ID:wQrOnGuH
yamlの仕様を学ばないままcomposeやk8sを使ってる
2022/07/27(水) 03:54:50.01ID:PQGmIH2y
パスの\を/にかえなきゃいけないのが面倒すぎるんだがなんか方法ないのか?
\\にかえるのもめんどう

で調べたらRつけるだけでいいらしい……
だったら最初から\読み込めるようにしろよ!
2022/07/27(水) 09:00:44.94ID:pyuUgR41
>>560
jsとpythonでしかjson使ったことないけど、どちらも使い勝手は変わらんと思うが。
572デフォルトの名無しさん
垢版 |
2022/07/27(水) 10:05:16.97ID:elZrgoJK
>>560
があほすぎなすれ
573デフォルトの名無しさん
垢版 |
2022/07/27(水) 13:08:32.87ID:B7vnAx8k
>>570
その文句は、エスケープ文字を勉強したほうしたほうがいい
あといちいち手動でreplaceするよりPathlib使った方がかかいもよ

https://pystyle.info/python-pathlib/
2022/07/27(水) 13:27:46.89ID:aU47T/gU
パースするだけなのにそんなに面倒か?
2022/07/27(水) 13:28:56.39ID:aU47T/gU
すまん、jsonの話な
576デフォルトの名無しさん
垢版 |
2022/07/27(水) 15:26:57.56ID:B7vnAx8k
PythonでJSONの取り扱いは、JS以外の他の言語と比べたらめちゃくちゃ楽な方だと思うけどな。ほとんどJSと変わらない。
CはともかくC++だって全然簡単じゃないからねえ。CだとPythonの5倍、C++でも2.5倍ぐらいの記述量になる気がする。
577デフォルトの名無しさん
垢版 |
2022/07/27(水) 16:26:23.72ID:G6wuTkcd
何年前の話よ
https://github.com/nlohmann/json
2022/07/27(水) 16:52:22.09ID:aU47T/gU
jsonはpythonのビルトインパーサーでなんとかなるな
使えないhtmlパーサーとは大違い
2022/07/27(水) 19:30:05.71ID:xJ8anoa4
python に限った話じゃないけどなぜか html パーサーっこれって言う奴ないよね
2022/07/27(水) 20:20:11.22ID:aU47T/gU
>>579
htmlが、sgml/xmlを簡略化した派生で
文法があまりに自由でゆるゆるだったから、
もともとデータ処理には向いていなかったということなんだと思うよ
2022/07/27(水) 20:28:14.33ID:xJ8anoa4
>>580
そうは言っても html で公開されてるデータもあるんだからねぇ
2022/07/27(水) 20:42:25.68ID:aU47T/gU
>>581
現状では、外部モジュールに頼るか、力づくでなんとかするかしかないものねw

最近はhtmlに組み込まれたjsonデータ形式(json-ld)が多くなって、
データを探るくらいならあまり悩まずにすむので助かってるわ
583デフォルトの名無しさん
垢版 |
2022/07/27(水) 22:42:50.60ID:+MHO4Y86
君ら二人が思ってるほどそういう需要がないんじゃない
結局やりたいのはスクレイピングでしょ
584デフォルトの名無しさん
垢版 |
2022/07/27(水) 23:00:58.07ID:+MHO4Y86
スクレイピングできるようなライブラリを標準ライブラリに組み込んで欲しくはないよね
html.parseは確かにシンプルだとは思うけど、どこまでってなると難しい
html自体がかなり緩いから、サービス依存とか流行に依存してしまうんだよね
まぁ、Beautiful Soupもあるしいいじゃないすか
2022/07/28(木) 00:22:28.49ID:nqLen+JC
yieldって初めて見た

ジェネレーター関数?を作るときに使うのか
正直使い道がわからんな
ジェネレーターとかイテレーターとかはだいたいわかるけど
2022/07/28(木) 05:13:59.70ID:mvZe9xm4
>>585
> ジェネレーターとかイテレーターとかはだいたいわかるけど
わかってたらyieldの使いどころがわからんとかないと思うが...
2022/07/28(木) 05:40:55.75ID:8YG1K1uV
>>586
こういうやつって結局何聞かれても説明できないやつだよな
2022/07/28(木) 05:45:38.18ID:yBjc1Rgi
国債取引してればyieldなんてしょっちゅう見るけどな
589デフォルトの名無しさん
垢版 |
2022/07/28(木) 16:20:58.93ID:m8z1CQHY
教えてください。
Wordpressに記事投稿する際に閲覧パスワードをつけたい場合
‘status’=‘publish’,
‘contents’=‘記事本文’,,
‘password’=‘閲覧パスワード,
‘tag’=1
….
と指定しています。
投稿自体は成功しているのですがパスワード付きの記事になりません。
どなたか解決策をお願いします。
590デフォルトの名無しさん
垢版 |
2022/07/28(木) 20:16:12.08ID:Hv8PyQaz
>>585
馬鹿には無理
591デフォルトの名無しさん
垢版 |
2022/07/28(木) 22:51:57.42ID:9hZjKw0t
>>585
リスト返すよりよりジェネレータ―の方がコスト低いからでは解決しない質問?
2022/07/28(木) 22:58:58.42ID:cRsx7yDk
リスト作成のコストと比べても意味ないやろ
yield使わずにジェネレーターを作ればありがたみが分かる
2022/07/29(金) 00:22:32.77ID:fEBZH37g
リストをfilter()使ってlambda式ではなく外部関数を呼び出して抽出する場合、外部関数に追加の引数を渡すことってできますか?
リストの要素に加えてさらに判定用の引数を与えて外部関数で処理させたいです
2022/07/29(金) 01:28:35.66ID:8gcFFgPp
>>593
部分適用した関数を用意すればできるよ
partialとか関数を返す関数を書くとかで
リストを[(要素, 追加引数)]の形にzipするのでもてきる

ただlambda使って外部関数に引数渡すのが一番よく使われてる印象
2022/07/29(金) 02:05:51.08ID:sW6reep3
>>593
functools. partial
2022/07/29(金) 02:28:02.24ID:fEBZH37g
>>594,595
functools.partialもlmbdaもできました。ありがとうございます。
確かにlambdaのほうがすぐに書けるのと、パッと見て分かりやすいかもですね
2022/07/29(金) 16:36:15.82ID:0LOpWdsN
ある変数に対してifまたはelseで値を代入するとき「未定義の可能性があります」という警告が出てしまいます。
この警告は無視して構わないのでしょうか?
実際はifかelseが必ず実行されるため、未定義になることは無いと思います。
2022/07/29(金) 18:15:50.48ID:APedJzV4
両方でちゃんと定義があれば問題ないんじゃないの
599デフォルトの名無しさん
垢版 |
2022/07/29(金) 18:30:32.97ID:XaB7Y5c2
>>597
その部分のコード書いてみ
たぶん未定義になるパターンがある
2022/07/29(金) 19:07:07.88ID:GzwVbssN
ifとelse両方で定義してあれば未定義にはならんと思うけどな
定義してないから警告出るのかね
2022/07/29(金) 19:10:09.40ID:WG/TpH2M
>>597
無視しない方がいい
2022/07/29(金) 19:58:02.11ID:47SIIXKm
て言うか未定義の「可能性」なんて普通の処理系ではでないだろ
なんかツール使ってるならそのツールの名前書きなよ
2022/07/29(金) 20:45:46.18ID:IOBifLpO
どこかに未定義ルート有るんだ
そこらへんを探すのが楽しい
2022/07/29(金) 21:51:50.81ID:a1Tgek7B
Ruby では、条件分岐で初期化されるはずの変数が、
初期化されなかった場合に、nil・未定義になる

if false
n = 1
end

p n #=> nil
2022/07/29(金) 23:03:00.11ID:jDexz6tX
翔泳社のスラスラわかるPythonを読み終えて、
次にソフトバンクのPython完全入門を買おうか迷ってるんですが、
どなたか読んだ方いましたら感想を教えて下さい
よろしくお願いします
2022/07/30(土) 02:27:49.30ID:z4LSWTQO
入門書は1冊で充分なのでは?
2022/07/30(土) 02:27:58.30ID:z4LSWTQO
入門書は1冊で充分なのでは?
2022/07/30(土) 02:34:45.44ID:f1hyBgWY
レスは1回で充分なのでは?
609デフォルトの名無しさん
垢版 |
2022/07/30(土) 09:23:55.07ID:azT7AVAA
webアプリ作って内部サーバーから使ってみよう、みたいな本読んでるんだが

コマンドプロンプトに
python -m http.server --cgi 8080
と書いてwebサーバー立ち上げて
ブラウザで
htttp://localhost:8080
開くまではできたんだ

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

pythonコード自体は以下
https://techiedelight.com/compiler/?MN5F
610デフォルトの名無しさん
垢版 |
2022/07/30(土) 09:27:36.20ID:paa5jUiA
●未定義ルートがある
●typoを見落とし
611デフォルトの名無しさん
垢版 |
2022/07/30(土) 09:28:23.25ID:paa5jUiA
>>606-607
レスは一回で充分
612デフォルトの名無しさん
垢版 |
2022/07/30(土) 09:29:27.96ID:paa5jUiA
>>609
flask使え
2022/07/30(土) 13:25:48.25ID:OlgNXvPr
呼ばれたクラスのメソッド実行やインスタンスの参照はできますでしょうか?
RubyのBinding_of_caller gemのようなことをやりたいです。
2022/07/30(土) 15:23:09.66ID:8gKCOMRQ
>>609
例えば、Ruby では、

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

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

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

a.csv, a.txt など、ブラウザが解釈できない拡張子の場合は、ダウンロードされる
2022/07/30(土) 15:41:57.89ID:cxvuT0Ap
>>609
cgi_directoriesで定義されてるディレクトリの中にあるソースコードじゃないとじっこうできないかも

>>614
csvじゃなくてcgiの話な、チンカス
2022/07/30(土) 15:55:32.29ID:lN6AqJ/F
>>609
/cgi-binに配置して
localhost:8080/cgi-bin/xxx.pyでアクセス
2022/07/30(土) 15:56:01.53ID:lN6AqJ/F
あ、被ったね
2022/07/30(土) 16:15:20.28ID:t64/Q8Lh
14分差でかぶるとかすごいな
619605
垢版 |
2022/07/30(土) 17:33:25.97ID:opcLftHA
レスありがとうございます

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

今となっては独習Pythonなどの中級書に進んだ方がいいですか?
2022/07/30(土) 17:49:27.02ID:6SJJiflx
手段が目的になってるパターン
621デフォルトの名無しさん
垢版 |
2022/07/30(土) 19:25:46.15ID:EI1U6qjF
民明書房の「結局あんたはpythonで何がしたいの?」とか読むといい
622605
垢版 |
2022/07/31(日) 08:22:18.53ID:V2xTXw/0
辛口ですね
2022/07/31(日) 08:43:12.47ID:bF6WKikK
bool([])がFalseなのに
all([])がTrueになる理屈を教えてください
2022/07/31(日) 08:56:05.73ID:IhfjCb0y
イテラブルの要素の探索中にFalseでリターンされなければTrueをリターンされるようにallが実装されてるから
https://github.com/satwikkansal/wtfpython#-all-true-ation-

設計思想的な話しなら分からん
2022/07/31(日) 09:01:11.39ID:qkw0CgkT
数学的にそれが自然
Wikipediaの論理包含とかVacuous truthを読め
626デフォルトの名無しさん
垢版 |
2022/07/31(日) 09:35:16.42ID:qvc5fIgv
test
627デフォルトの名無しさん
垢版 |
2022/07/31(日) 09:36:51.24ID:qvc5fIgv
r = True
for e in S:
r = r and e
return r

S が空の場合,for文の中は1度も実行されない.
返されるのは,rの初期値であるTrue
2022/07/31(日) 09:37:12.57ID:bF6WKikK
>>624
理屈はわかりました
その実装にした人を小一時間問い詰めたい気分でいっぱいです
all([])の結果にTrueを求めるユーザーが世の中に一人でもいるのでしょうか…

>>625
数学はよくわからんのですごめんなさい
629デフォルトの名無しさん
垢版 |
2022/07/31(日) 09:39:03.02ID:qvc5fIgv
似たような例として,Sの要素の和を計算することを考える.

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

Sが空の場合,rの初期値である0が返される.
630デフォルトの名無しさん
垢版 |
2022/07/31(日) 09:45:32.68ID:qvc5fIgv
似たような例として,Sの要素の積を計算することを考える.

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

S が空の場合,返されるのはrの初期値である1
631デフォルトの名無しさん
垢版 |
2022/07/31(日) 09:48:34.65ID:qvc5fIgv
sum, prodという関数がPythonにあるのならば,

sum([]) == 0

とするのが自然だし,

prod([]) == 1

とするのが自然.

prodのほうは不自然に感じる人がいるかもしれないが,sumが自然なのと同じ理由でprodも自然.
632デフォルトの名無しさん
垢版 |
2022/07/31(日) 10:26:40.61ID:qvc5fIgv
0! := 1と定義するのも同じ理由.
633デフォルトの名無しさん
垢版 |
2022/07/31(日) 12:12:56.03ID:eQtf7hMi
anyとかallは評価できるものがある場合にのみ使うべきだと思うんだ。空打ちしたら「何だこりゃ」ってなる
つまり
all([]) ではなくall([''])と使いたい。これなら正しく(評価がなされて)falseが返る
つかall([]) ってどういう状況よ
2022/07/31(日) 12:23:51.14ID:1z9jykhy
リテラルを渡すわけじゃないだろ
2022/07/31(日) 12:55:33.13ID:VBdofYjo
論理包含、Vacuous truthを読めと言ってる人は理由を知っているだけで理解できていない
636デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:14:04.77ID:aNbLKyix
>>635
言葉足らずは役立たず
637デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:25:03.81ID:qvc5fIgv
any([]) == False
all([]) == True

こうだと何が問題になるのかが分からない.
638デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:32:01.26ID:qvc5fIgv
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)は偽である.
2022/07/31(日) 14:16:45.61ID:WKv/EkLm
お勉強スレで403がでる
2022/07/31(日) 14:23:06.73ID:VBdofYjo
allとanyのあるある言いたい TrueとFalseのあるある早く言いたい
2022/07/31(日) 15:56:07.05ID:KzJjN0dA
聞いてねえ黙っとけマザコン男
2022/07/31(日) 16:39:23.51ID:6uU1oN4W
突然マザコンという単語が出てきた
普通の人はすぐに思い浮かぶ単語ではない
つまり、自分がそうだとよく言われたから頭に浮かびやすいと自己紹介しているわけだ
2022/07/31(日) 17:10:58.62ID:a1qLKfui
vscでインタープリターが設定出来ずエラーになる
なんでぇ…検索しても出てこない…
2022/07/31(日) 17:19:39.16ID:WKv/EkLm
vscスレあるからそっちで聞いたら?
2022/07/31(日) 17:40:03.84ID:VBdofYjo
>>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の取って付けた数式見ても分かんない、でもコードで書くとあら不思議一目瞭然
2022/07/31(日) 18:21:17.32ID:vZudoVRF
全く疑問に答えてなくて草生えるwwwww
2022/07/31(日) 18:30:32.80ID:IhfjCb0y
>>645
空リストに分解するのはいいね
ただanyはFalse側で示さないといけないな
2022/07/31(日) 18:42:16.99ID:1IXOln4s
1. [True, True]
2. [True, False]
3. [False, False]
4. []

この4つから
1種類だけ処理したい場合と2種類だけ処理したい場合を
all, any, notで各listにつき1回走査するだけで書けるかどうか
もしall([])がFalseだとしたらどうか
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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