Pythonのお勉強 Part70

レス数が1000を超えています。これ以上書き込みはできません。
2023/03/04(土) 00:18:00.31ID:dUl31UkL0
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
 エラー文(勝手に省略orスクショうp等の横着禁止)と
 おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。

★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
  ↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Pythonオフィシャルサイト http://www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2023/09/10(日) 08:49:12.27ID:6MRCqhIwM
>>910
興味深いテーマを与えれば勝手に行動するみたいだから
人に聞かないとなんにもできないお前らよりコイツの方がよっぽど使えるだろう
912デフォルトの名無しさん (ワッチョイ 1aad-6jLp)
垢版 |
2023/09/10(日) 08:52:38.42ID:hps7g+0s0
おれは元々、差別はいかん!
という主義だった。

そのおれに差別発言させるまで
攻撃をつづけたんだから、
まあ、恐るべき怨み粘着性だなと感心する。
調べてみると、それがチョンの性質らしい。

それで決心した。
おれは死ぬまでチョンを差別するぞ、と。
チョンを全員半島に追い返すまで戦います!
913デフォルトの名無しさん (ワッチョイ 4e46-dpy9)
垢版 |
2023/09/10(日) 09:39:59.07ID:RgTg1P0N0
之を如何せん、之を如何せんと曰わざる者は、吾之を如何ともするなきのみ
と古人は言いました。分からない事は積極的に訊きましょう。
914デフォルトの名無しさん (ワッチョイ 1aad-6jLp)
垢版 |
2023/09/10(日) 10:58:24.80ID:hps7g+0s0
おれは元々、差別はいかん!
という主義だった。

そのおれに差別発言させるまで
攻撃をつづけたんだから、
まあ、恐るべき怨み粘着性だなと感心する。
調べてみると、それがチョンの性質らしい。

それで決心した。
おれは死ぬまでチョンを差別するぞ、と。
チョンを全員半島に追い返すまで戦います!
915デフォルトの名無しさん (アウアウウー Sa47-/bgi)
垢版 |
2023/09/12(火) 19:54:34.04ID:Y185PNUOa
Pythonやるならまず「多重継承」な!

なぜ多重継承かというと、自然言語処理において語句の意味は「文脈」によって異なるからだ!

随意筋  不随意筋
  ↖   ↗
   チンポ

チンコの随意筋と不随意筋
http://d.hatena.ne.jp/tottokotokoroten/20130516/1368716650

https://mobile.twitter.com/daikidomon/status/1385368820240437248

土門大貴/Daiki Domon
@daikidomon
Pythonの多重継承がわかりづらい。
継承クラスの左のクラス名を指定とかあたおか。
https://twitter.com/5chan_nel (5ch newer account)
https://twitter.com/5chan_nel (5ch newer account)
2023/09/12(火) 20:48:15.22ID:gN0G7IVm0
多重じゃない継承すら読みにくくない?
917デフォルトの名無しさん (アウアウアー Sa06-bjEX)
垢版 |
2023/09/13(水) 06:55:25.38ID:fd6I2zsCa
多重継承とか何に使うのか想像すらつかんけどpathlibがガッツリやってるらしいね
何に使うの?
ほんとに想像つかない

クラスを集合と捉えて排反でない分割したいこととかそんなあるか?
2023/09/13(水) 07:35:15.02ID:es5nzpicM
そーそー普通ダイヤモンド継承だよね~
2023/09/13(水) 17:59:56.20ID:YINB0qAa0
入れ子した辞書同士の同定って
d1 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":3}}}
d2 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":3}}}
キーと値の総当りをやるのが確実なんだろうけど
if d1==d2でいいよね・・?と思ってふと値がインスタンスだった場合もやってみたら
class Hoge:
 def __init__(self,a):
  self.a=a
d1 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(10)}}}
d2 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(10)}}}
d1==d2 # False

Falseだった
辞書の値が、辞書 or リスト or str or int or boolean or Noneしか取らない
って前提だったらもうd1==d2でいいか・・
json.dumps(d1)==json.dumps(d2)ってのもどこかでみたことあるけどなんかメリットあるのかこれ
2023/09/13(水) 19:05:29.66ID:mZetXESn0
==は同じオブジェクトという意味だしな
インスタンスは別のオブジェクト
921デフォルトの名無しさん (ワッチョイ 0e33-erq7)
垢版 |
2023/09/13(水) 21:33:39.48ID:2ECL/EIJ0
>>919
class Hoge(int):
def __init__(self,a):
self.a=a

d1 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(10)}}}
d2 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(10)}}}
print(d1==d2) # True
d1 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(1)}}}
d2 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(10)}}}
print(d1==d2) # False
2023/09/13(水) 21:41:47.97ID:FudrDNP00
Hogeを値で比較したいなら__eq__と__hash__を書くかdataclass的なものを活用するか
2023/09/13(水) 21:58:52.60ID:GC1GSAPg0
へー、javaみたいなのあるんだ
924デフォルトの名無しさん (ワッチョイ 0e33-erq7)
垢版 |
2023/09/13(水) 22:33:54.03ID:2ECL/EIJ0
__hash__は無理じゃね
925デフォルトの名無しさん (ワッチョイ 0e33-erq7)
垢版 |
2023/09/13(水) 22:54:25.82ID:2ECL/EIJ0
https://ideone.com/eiiqyF
これって、これ?
https://docs.python.org/3/c-api/stable.html#c-api-stability
926デフォルトの名無しさん (アウアウウー Sa47-bpS4)
垢版 |
2023/09/13(水) 23:35:03.93ID:ljzzNVbDa
>>919-920
==は同じオブジェクトという意味ではない

x1 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":3}}}
x2 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":3}}}

print(x1 == x2)
print(x1 is x2)

class Hoge:
def __init__(self,a):
self.a=a

d1 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(10)}}}
d2 = {"a":{"aa":1},"b":2,"c":{"cc":{"ccc":Hoge(10)}}}

print(d1 == d2)
print(d1 is d2)
2023/09/14(木) 15:38:55.11ID:E7PcL1rL0
ようは早い話が
Hogeがもし非自作だったりしたときも
__eq__で拡張しとけば、いちいちforとかで回したりせずに
d1==d2だけでイケるってことでいいのか
928デフォルトの名無しさん (ワッチョイ 0e33-erq7)
垢版 |
2023/09/14(木) 20:02:46.79ID:x6b4sEhy0
わざわざ__eq__だけ実装するよりもdataclassのほうがいいと思う
2023/09/14(木) 21:20:20.60ID:Z5WLuif8r
今Paizaで勉強してる
一通り終えたら入門書として、入門Python3 第2版を買おうと思うのですが、他に良いのあれば教えてください
2023/09/14(木) 21:40:35.40ID:mJzwIL1R0
pythonを本で勉強するという発想が無かった
2023/09/14(木) 22:01:47.20ID:XNzOozgR0
体系的に学ぶには本がよい
2023/09/14(木) 22:10:24.13ID:PDE0vufJ0
本読むと良いよ
めっちゃ興奮するしエロ本と変わらん
2023/09/15(金) 00:41:34.46ID:AGwvaccFa
プロ向きなら、Perfect series が良いけど、

パーフェクト Python [改訂2版] (PERFECT SERIES 5)、2020

改訂2版 パーフェクトRuby、Rubyサポーターズ、2017
パーフェクト Ruby on Rails 【増補改訂版】 (Perfect series)、2020
2023/09/15(金) 01:21:30.34ID:/EOrssYW0
>>933
Ruby関係ないし
2023/09/15(金) 01:43:25.39ID:1n4P5OHW0
>>933
ネタにマジレスするけど
そこはperlじゃないん?
2023/09/15(金) 04:07:37.47ID:cd4Mhd650
RORってGPLに汚染されて使えなくなったって聞いた
2023/09/15(金) 07:25:53.48ID:p7MIb3Fq0
>>929
paizaは学習コースあるんだから本なんて要らんが
2023/09/15(金) 08:52:17.62ID:StBTamIiM
>>929
本で仕入れた知識なんて糞の役にも立たん
ITは実践あるのみ
実用になるコードを書きまくって動かしまくれ
2023/09/15(金) 08:55:53.02ID:Y0aMdWmH0
effective pythonはたまに開いて刺激を得てる
2023/09/15(金) 10:38:10.58ID:X7EUN8b/0
本で仕入れた知識を実践するんやで
2023/09/15(金) 10:48:21.69ID:XTzSJ3sy0
本ばかり読んでもなんにもならないが
本を読まないのは馬鹿
2023/09/15(金) 10:52:59.05ID:Y0aMdWmH0
余計な苦労を避ける為の上手い書き方に納得するには、
一度は余計な苦労をしてる必要があるんだよな
943デフォルトの名無しさん (アウアウアー Sa06-bjEX)
垢版 |
2023/09/15(金) 18:32:02.40ID:KXmk4gupa
Pythonは本かサイト使いながら勉強するのが良いよ
Pythonチュートリアルを読み解く実力がある人なら必要ないけど
そうじゃないなら、体系的知識を身につけるには入門書読むのが早い
というかベスト
944デフォルトの名無しさん (ワッチョイ 0e33-erq7)
垢版 |
2023/09/15(金) 20:35:47.41ID:BvXWB9/L0
Paizaの入門コース終えたなら何か作ってみたらいいのに
2023/09/15(金) 21:53:30.72ID:Y0aMdWmH0
っていうか、まず作るんだよ
で、本を読んでもっといい方法を知る
2023/09/16(土) 00:50:04.13ID:GOLJ0aM50
書籍で言ったら秀和システムの『実践100本ノック』はどれも良かった
O'Reillyが一番なんだろうが
2023/09/16(土) 00:52:51.04ID:Ki/MMBdQa
Effective Ruby は良い。
バグが起きにくい、安全で効率的なコーディングと、
間違いやすいポイントを解説

Effectiveシリーズも、日本人の著者もあるから、気を付ける。
「Effective Modern C++」の元祖・Scott Meyers と関係ないのに、
Effectiveと付けている本もある

その点、Effective Rubyは、Meyersにレビューをしてもらっている。
Effective Python は知らないけど
2023/09/16(土) 08:19:40.72ID:6K0or2YE0
effective perlは読んでる最中にperlに対する興味を失ってしまった
949デフォルトの名無しさん (ワッチョイ 0f01-JSeT)
垢版 |
2023/09/16(土) 09:20:44.97ID:FQ6fYHli0
T,o,k(迷惑という方は←をあぼーんしてください。)

家族に紹介する側になり、加えて¥4000×人数をGET!
https://i.imgur.com/X3cw4bL.jpg
2023/09/16(土) 10:54:43.68ID:FZJflFW60
>>949
エロ動画多いよな
2023/09/16(土) 11:11:03.27ID:VYkZR1o+M
自分で書くのは時間の無駄
今はChatGPTにこんなコードが欲しいと聞けば一瞬で書いてくれる
プログラマにはもはやコードを書く能力は求められていない
2023/09/16(土) 11:26:29.93ID:mzsOP2I60
と思っていた時期がありました
2023/09/16(土) 11:38:03.52ID:6K0or2YE0
ChatGPTの仕組みを知らないと、頼ってもいいかもと思えてしまうんだよな

過去に誰かが書いたコードの丸コピーならうまくいくというだけ
簡単な算数すら間違う奴に論理的思考を期待するのが間違い
2023/09/16(土) 11:55:51.96ID:xpoAECi+0
>>949
グロ
955デフォルトの名無しさん (アウアウウー Sa53-HRje)
垢版 |
2023/09/16(土) 12:24:39.04ID:RATZO/gia
>>949 死ね
>>953 それ
ChatGPT持ち上げてる連中は文系馬鹿だけ
2023/09/16(土) 12:25:22.55ID:4RrVea/Jd
Python勉強し始めたけど環境構築について調べてるだけであっという間に時間が溶けてく・・・
2023/09/16(土) 12:35:00.43ID:VYkZR1o+M
>>956
環境構築は出来る限りするな
・使うツールはテキストエディタとコマンドプロンプトのみ。VSCodeなど言語道断
・外部ライブラリは一切使わない
この二つを守ればトラブルのないPythonライフを送ることができる
2023/09/16(土) 12:41:08.76ID:IXYjqLnl0
>>957
それ言語の初学者には良いだろうけど
業務で使うなら超縛りプレイじゃない?
2023/09/16(土) 12:46:59.61ID:6K0or2YE0
まずexcel読み書きモジュールの内作からだな
2023/09/16(土) 12:50:19.75ID:mzsOP2I60
インタプリタ自作してから言え
2023/09/16(土) 12:55:37.64ID:ChIAnApXM
>>956
わかる
2023/09/16(土) 12:57:40.87ID:VYkZR1o+M
>>958
業務なら環境構築の規約や手順が整備されているだろうし同僚の真似をすればいいからな
初学者が自力で一から環境構築ってのはあまりに無理ゲー
2023/09/16(土) 14:24:19.55ID:LU1R8AA00
>>949
絶対に試すべきだね
2023/09/16(土) 14:37:41.98ID:JW3zmgped
とりあえずVSCodeのdevcontainerを利用して環境構築中
パッケージ管理はpoetryってのを使ってみることに
2023/09/16(土) 22:39:17.34ID:XboORpcQ0
>>964
いいね今やるならこれだろうね
2023/09/16(土) 23:27:56.86ID:6K0or2YE0
macでpythonやってる人も多いんだよな
macの人がコード書くとか全然イメージ無いのに
2023/09/16(土) 23:34:24.05ID:atjd4Lev0
意識高い系プログラマーは皆mac使うとるだろ
2023/09/16(土) 23:46:37.75ID:6K0or2YE0
他の言語の人はmac使わないのに、何故かpythonだけmac多い
2023/09/17(日) 00:26:14.83ID:yUmh7hqEa
YouTube で有名な雑食系エンジニア・KENTA のベストセラー本、
「21世紀最強の職業 Web系エンジニアになろう」にも、

Web系自社開発企業は、東京でMac を使って、
Ruby on Rails で開発すると定義しているけど、

YouTubeのRailsの第一人者・Deanin は、WSL2 で開発している。
VSCode, React, Docker なども使う
2023/09/17(日) 11:20:47.44ID:UA70Y2jw0
BeautifulSoupでfindするのも、使わずに正規表現でリストにするのも、
階層を辿っていくから本質的になんも変わらんなと思ってたけど、
selectだと一発で行けるんだな
今更CSSを基礎からやってる
2023/09/17(日) 23:37:38.35ID:3hfVWz4fa
CSS Selector の書き方でしょ?
jQuery でも見れば?
2023/09/17(日) 23:53:47.61ID:UA70Y2jw0
タグ #ID .class だけ覚えて、> で連結するだけだから1分で判る
2023/09/18(月) 08:00:23.72ID:8bZhJQqX0
flaskを勉強中なんだけど、これって静的なhtmlを表示したいとき、

return render_template('hoge.html')

だけの関数をhtmlファイルの数用意しなきゃいけないのかな?
2023/09/18(月) 10:02:56.02ID:i/AvTRYAa
>>973
テンプレートエンジンでぐぐれ
大抵は雛形(テンプレート)となる穴あきのbase.htmlとか作って再利用できるような仕組みになってる

イメージ
base.html側
<html>
 {% block head %}{% endblock %}
 <body>
  {% block body %}{% endblock %}
 </body>
</html>

hoge.html側
{% extends "base.html" %}
{% block head %}
 <title>hogeタイトル</title>
{% endblock %}
{% block content %}
 <span>hogeコンテンツ</span>
{% endblock %}

結果 hoge.html
<html>
 <title>hogeタイトル</title>
 <body>
  <span>hogeコンテンツ</span>
 </body>
</html>
2023/09/18(月) 10:09:15.85ID:FUf5l9vT0
で、もちろん例えば引数で値を渡したりして動的に生成できる
return render_template('hoge.html',{"title":"hogeタイトル","content":"hogeコンテンツ"})
flaskでのやり方はあってるかどうかはしらんが
大体どれも同じ

大抵はデータベースのレコードの値を渡して
テンプレート側で展開してあたかも静的なhtmlにみせる、みたいな使い方だと思う
2023/09/18(月) 10:13:25.85ID:17IvgiG/0
jinja2使うならデータベースのselectで返ってきたオブジェクトをそのままテンプレートエンジンに渡せたはず
2023/09/19(火) 09:56:44.37ID:+8wHCmI/0
プログラムはちんぷんかんぷんで他の人の書いたコードを動かす事くらいしか出来ない者ですが質問良いですか
コマンドプロンプトをつかって一週間以上前までは動いていたコードが(完了まで長くても15分くらい)
昨晩起動したら全く進まずタイムアウトするようになってしまいました
環境の変化で思い当たる節が一昨日辺りにパソコンの更新を下くらいです

更新後コードが動かなくなるってありますか?
2023/09/19(火) 11:50:46.13ID:qRsK9kDC0
更新でpythonやプログラムで使っているライブラリのバージョンも更新されて動かなくなることはある
もしそれが原因なら、そのプログラムで使われているライブラリのバージョンさえわかればなんとかなる
README見ると大抵は「このバージョン使って」と書いてある
2023/09/19(火) 12:51:57.56ID:ImzyW01Z0
ちんちんかゆい
2023/09/19(火) 13:59:44.77ID:9F0I7Cta0
>>978
了解しました
ライブラリのバージョン確認仕方わかったら出来たら再度質問させてもらいます
2023/09/19(火) 14:07:06.31ID:eyeH4fPH0
エラーメッセージ読めないの?
まずそれ読まなきゃ
982デフォルトの名無しさん (ワッチョイ 4f0d-oAvq)
垢版 |
2023/09/19(火) 19:01:14.14ID:SMbXmEhI0
ファイルの読み書きの操作をしたいのですが
間違ってもシステムに関わるような重要なファイルは消さないようにしたいです
Windowsでスクリプトを扱うとして、スクリプトにベタ書きされているパス文字列を多少いじってもカレントディレクトリを絶対に動かさない、システムファイルを消さないような設定にするにはどうしたらよいでしょうか?

管理者権限のないアカウントで動かそうと思っているのですが、それだけでは足りないでしょうか?

管理者権限のあるアカウントで動かす場合にはどのような安全対策が考えられますでしょうか?
983デフォルトの名無しさん (ワッチョイ ff90-xbk3)
垢版 |
2023/09/19(火) 19:43:56.29ID:GWqstgC30
質問する前にぶっこわしてもいい環境で好きなだけやってみたら?

何をしたいのかも知らんし。
984デフォルトの名無しさん (ワッチョイ 0f70-hbIC)
垢版 |
2023/09/19(火) 19:48:14.03ID:zCznr2Fq0
>>982
管理者権限のないユーザーで実行すれば、最悪ユーザーファイルがおかしくなるまでに留まると思う

本当に不安ならVMとかコンテナとかColabで試すという手もある
2023/09/19(火) 19:48:45.14ID:7Ah1acT00
openをラップしてそれだけ使う
2023/09/19(火) 19:56:20.01ID:QCYT99dv0
例えばリネームするならfrom toをprintして確認してからリネームするなどできることはある
2023/09/19(火) 19:59:34.12ID:SLj63IF90
自分がミスしないようにしたいのか、悪意のある誰かが悪いことをできないようにしたいのか
2023/09/19(火) 20:57:43.78ID:+8wHCmI/0
>>978
お世話になってます
確認したましたところおそらく推奨Pythonが3.10.6で入っていた私のPythonは3.10 64-bitでした、これが原因でしょうか
あと使用しているコードはnoteで公開されていた物で、クラウド環境modalにHugging Faceで発行したトークンを使用して実行しています

>>981
エラーメッセージは自分で分かる範囲が
タスクの状態がタイムアウトしました程度にしかわからなくて
スタック?にはPythonのフォルダが多いのPythonのバージョンが合わなくなったのかと思い込んでるんですがどうでしょう

https://i.imgur.com/EtbGeUR.jpg
989デフォルトの名無しさん (ワッチョイ ff90-xbk3)
垢版 |
2023/09/19(火) 21:30:03.42ID:LDuRdoQ30
パソコンの更新って具体的に何ですか?
2023/09/19(火) 21:39:48.17ID:eyeH4fPH0
>>988
わからんならそのまま検索ボックスに投げるかchatgptに聞け
2023/09/19(火) 22:04:54.37ID:+8wHCmI/0
>>989
すみません、これです
https://i.imgur.com/bfl64Da.jpg
https://i.imgur.com/tmxnUNx.jpg
https://i.imgur.com/KwDcDca.jpg
2023/09/19(火) 22:13:30.32ID:A59QEeRE0
hugging faceから何か大きいサイズのモデルダウンロード中に6000sタイムアウトしたとかではなくて?
もしそうであれば全ソースコードから"6000"って数値いじれば応急処置にはなるかも

詳しくは見てないけどここら辺なんか似たような症状ぽい
間違ってたらすまんが
https://zenn.dev/link/comments/b1a978d1a65058
2023/09/19(火) 23:26:15.76ID:+8wHCmI/0
>>992
ありがとうございます
そうですそちらの該当記事をを参考に作成してました
多分追加機能を入れる際に何かしら大きな物をダウンロードしているのだと思います
教えていただいた症状の方と症状は違いますが時間の弄り方は見落として居たので助かります
時間を伸ばして再度チャレンジしてみます
2023/09/19(火) 23:44:39.25ID:BiYVMB+c0
ならこんなスレでふんわりした聞き方するよりstable diffusionのスレで聞いた方がいいんじゃない?
同じような現象に遭遇した人もいるかもだし
2023/09/19(火) 23:50:28.46ID:+8wHCmI/0
>>994
すみません
プログラム知識に長けた人こちらの方が多いかと思ってこちらで相談させて頂きました
2023/09/19(火) 23:59:14.31ID:BiYVMB+c0
>>977程度の情報ではプログラム知識もへったくれもないよ
同じものを触ってる人達のノウハウの方がよっぽど頼りになる
997デフォルトの名無しさん (アウアウクー MM23-hs9u)
垢版 |
2023/09/20(水) 05:18:39.13ID:HkbOmDGqM
お勉強スレならPython全く書けない人の質問は流石に反応すべきでない
2023/09/20(水) 09:12:30.69ID:u6xixiUt0
2023/09/20(水) 09:13:08.28ID:u6xixiUt0
2023/09/20(水) 09:15:03.37ID:u6xixiUt0
次スレ
Pythonのお勉強 Part71
https://mevius.5ch.net/test/read.cgi/tech/1695168821/
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 200日 8時間 57分 3秒
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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