Pythonのお勉強 Part73

レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ワッチョイ f610-G7il)
垢版 |
2024/06/06(木) 08:48:10.07ID:DsazphEm0
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

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

※前スレ
Pythonのお勉強 Part72
https://mevius.5ch.net/test/read.cgi/tech/1703659345/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2024/06/06(木) 08:48:26.44ID:DsazphEm0
★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/
2024/06/06(木) 17:56:13.06ID:LHUwShPy0
●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その59
https://mevius.5ch.net/test/read.cgi/tech/1689241721/

次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ### ?
4デフォルトの名無しさん (ワッチョイ 4a01-HpFF)
垢版 |
2024/06/07(金) 12:51:54.25ID:tQZH7Tnk0
グーグル、資料のわからないところを最新AIに質問できる「NotebookLM」日本版公開
https://ascii.jp/elem/000/004/202/4202481/
5デフォルトの名無しさん (ワッチョイ 4a88-HpFF)
垢版 |
2024/06/08(土) 10:47:22.66ID:TRqvICLK0
「毒杯飲む直前どんな気持ちだった?」ソクラテスと対話できるAIを開発!
2024.06.04
リコーと理研、技術の実用化の“兆し”を察知するアルゴリズムを開発
2024/06/05
グーグル、資料のわからないところを最新AIに質問できる「NotebookLM」日本版公開
2024年06月06日
6デフォルトの名無しさん (ワッチョイ ff0c-xov0)
垢版 |
2024/06/09(日) 08:03:08.08ID:GyoPGP3N0
全ての波【電磁波】で下記の症状が起きる
理由は電磁波が強いために起こるか電磁波が通過すれば磁気が生じて鉄分が振動して間接的に鼓膜などが振動する
マイクロ波聴覚効果を用いた音声伝送に関する検討
2018/03/05
https://www.bookpark.ne.jp/cm/ieej/detail/IEEJ-ZT181039-PDF/
マイクロ波聴覚効果 Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E6%B3%A2%E8%81%B4%E8%A6%9A%E5%8A%B9%E6%9E%9C
>>マイクロ波を照射された被験者は、クリック音やブザーのようなうなり音が聞こえる
早大、物質中の創発磁気モノポールに起こる集団振動現象を理論的に発見
2024/06/04
https://news.mynavi.jp/techplus/article/20240604-2958879/
理研、電子ビームの電子回折をアト秒で制御できる技術を開発
2024/06/06
https://news.mynavi.jp/techplus/article/20240606-2960578/
※電磁波も振動させれると記載あり
最低でも下記ノ電磁波の威力が必要なら行っている者全員補足されている
GPSの電波は超微弱
https://gigazine.net/news/20240421-gypsum-gps-receiver/
[22]米国特許5868100号
【GPS位置情報を使用した動物コントロール・システム】
一例ですが年々受信機の感度は向上している
東工大、磁束集中器を用いない高感度「ダイヤモンド量子センサ」を開発
2024/06/07
https://news.mynavi.jp/techplus/article/20240607-2961238/
電磁波音波攻撃をされている部位ごとにホルモンや異常物質などの観測
パーキンソン病の原因物質、脳内の可視化に成功
2024年6月6日 0時00分
https://www.asahi.com/articles/ASS652V7RS65ULBH00GM.html
7デフォルトの名無しさん (ワッチョイ ffb7-xov0)
垢版 |
2024/06/10(月) 07:48:22.94ID:QAB9rEB/0
AIの性能が上がれば世界情勢が見えてくる
にゅーーすで話していることもそれらしきことを話すようになる

まづボイス・トォ・スカルが存在している場合としていない場合を問う
そのあとに人間の行動をどのように行動するかを問う

交友関係全てわかる範囲で入力しておく
社会っ情勢を知るにはさらにどういった役職等も調べておく


自分が使用しているボイス・トォ・スカルを本物か偽物化も割り出せる
8デフォルトの名無しさん (ワッチョイ ffb7-xov0)
垢版 |
2024/06/10(月) 13:48:08.03ID:QAB9rEB/0
不眠症にカップ麺やスナック菓子などの「超加工食品」が関係しているという研究結果
https://gigazine.net/news/20240610-insomnia-linked-ultra-processed-foods/

インターネットの都市伝説「The Backrooms」の起源となった画像の正体はどうやって判明したのか?
https://gigazine.net/news/20240610-origin-of-the-backrooms/

GoogleのGeminiとMicrosoftのCopilotが過去のアメリカの大統領選挙を含めた世界中の選挙の結果を正常に返していないことが判明
https://gigazine.net/news/20240610-google-microsoft-chatbots-election-questions/
9デフォルトの名無しさん (ワッチョイ ffb7-xov0)
垢版 |
2024/06/10(月) 20:07:28.55ID:QAB9rEB/0
ボイス・トォ・スカル
電磁波音波攻撃が判明する
人間は電磁界を発生させている
※被害者の身体に痕跡あり
パーキンソン病の原因物質、脳内の可視化に成功
2024年6月6日 0時00分
東工大、磁束集中器を用いない高感度「ダイヤモンド量子センサ」を開発
2024/06/07
名市大、頭蓋内全体の脳脊髄液の動態をマクロ的に観測する手法の開発に成功
2024/06/07
早大、物質中の創発磁気モノポールに起こる集団振動現象を理論的に発見
2024/06/04
理研、電子ビームの電子回折をアト秒で制御できる技術を開発
2024/06/06
分子研など、金ナノ粒子が円偏光の左右選択性を70倍に高めることを発見
2024/06/06
弾性乱流と古典的なニュートン乱流との共通点を発見――弾性乱流を記述する数学的理論の開発に寄与 OISTら
2024-5-29
京大、テラヘルツ波の照射で超伝導体の臨界電流を制御できることを実証
2024/05/28
産総研など、1000個以上の量子ビットを制御可能な超伝導回路の原理実証に成功
2024/06/05
名大など、水素原子の約1/20の超高精度で収差補正できるX線顕微鏡を開発
2024/05/09
10デフォルトの名無しさん (ワッチョイ ffb7-xov0)
垢版 |
2024/06/10(月) 20:07:46.99ID:QAB9rEB/0
細胞の内部を鮮明に観察できる蛍光顕微鏡技術を開発 阪大など
2024/05/07
OIST、有機電気化学トランジスタのON時に生じるタイムラグの原因を解明
2024/05/07
並行世界でタイムリープを繰り返す!?効率的な新しいシミュレーション技術
2024.05.22
東大、電子回折パターンの減少とエントロピー増加の対応を実証
2024/06/03
理研など、「スキルミオンひも」の観察とその詳細な融解過程の記録に成功
2024/05/23 19:29
東大など、金属3Dプリント中の2D画像から3D多孔質構造を予測する手法を開発
2024/06/03
11デフォルトの名無しさん (ワッチョイ 6fe2-xov0)
垢版 |
2024/06/11(火) 05:32:23.34ID:7n9sgmId0
男性の精子の減少、携帯電話の使用と関係か 最新研究
2023/11/02
https://www.cnn.co.jp/fringe/35211064.html
放射線と被曝
https://www.kan-etsu-hp.ne.jp/wp-content/themes/kan-etsu-hp/assets/kanetsu-hospital/department/pdf/radiology/radiation.pdf
>>エネルギーが極端に大きくなると X 線やガンマ線と呼ばれる放射線の一種になります。
※電磁波音波攻撃被爆している?

MrIは強力な磁場を利用しているので被爆しない

冷凍した人間の脳組織を解凍した後も正常に機能する技術開発
2024.05.12
https://karapaia.com/archives/52331859.html

1立方ミリメートルの脳の断片をハーバード大学とGoogleの研究者がナノメートル単位で3Dマッピングすることに成功
2024年05月10日
https://gigazine.net/news/20240510-human-brain-mapped-in-spectacular-detail/
幼児期の脳活動から18歳時点でのIQを予測できるという研究結果
2023/09/09
https://gigazine.net/news/20230909-brain-activity-toddler-predict-18-iq/

パーキンソン病の原因物質、脳内の可視化に成功
2024年6月6日 0時00分
https://www.asahi.com/articles/ASS652V7RS65ULBH00GM.html
東工大、磁束集中器を用いない高感度「ダイヤモンド量子センサ」を開発
2024/06/07
https://news.mynavi.jp/techplus/article/20240607-2961238/
12デフォルトの名無しさん (ワッチョイ 6fe2-xov0)
垢版 |
2024/06/11(火) 05:32:43.73ID:7n9sgmId0
日常的な蓋内全体の脳脊髄液の動態をマクロ的に観測する手法の開発に成功
2024/06/07
https://news.mynavi.jp/techplus/article/20240607-2961214/
細胞の内部を鮮明に観察できる蛍光顕微鏡技術を開発 阪大など
2024/05/07
https://news.mynavi.jp/techplus/article/20240507-2941335/

脳が鮮明に見える!世界最強の磁束密度で脳をスキャンするMRI「イズールト」
2024.04.05
https://nazology.net/archives/148090
※5分で全身スキャン完了するのかな
13デフォルトの名無しさん (ワッチョイ ff8a-xov0)
垢版 |
2024/06/11(火) 06:54:09.86ID:3zjiFVVb0
電磁波兵器の特許情報/Google検索で下記が判明
電磁波過敏症 低周波騒音被害 の症状が出現

設立 1998年 テクノロジー犯罪の撲滅
Https://media.toriaez.jp/s2972/32686.pdf
P77-身体・運動機能が遠隔から操作される P78-五感が遠隔から操作される
ギャングストーキングと電磁攻撃 - 広島修道大学学術リポジトリ
https://shudo-u.repo.nii.ac.jp/record/3395/files/SG63205.pdf


下記を頭部などで再現

人間の「第六感」 磁気を感じる能力発見
2019/03/19
https://www.sankei.com/article/20190319-6UGPQVLP4BLEDJYGVSX3WW6A4A/
髪の毛ほど薄いのに音を75%カット!MIT開発の「革新的防音カーテン」
2024.05.13
https://nazology.net/archives/149896

言葉に出さずとも内なる声を解読する、脳の読み取り装置が解発される
2024.05.20
https://karapaia.com/archives/52331884.html
2024/06/11(火) 15:29:12.21ID:wBzrLimR0
exit
とだけ書くとエラーにはならずに処理が止まることもなく先に進むけど、
どういう扱いになってるの
2024/06/11(火) 16:25:22.59ID:sLt2GhnX0
関数オブジェクトが書かれた式
何の副作用もない
2024/06/11(火) 17:15:43.62ID:NWbfM0Iu0
C++プログラマーだが、
エディタは何使えばええの?

Visual Studioは一応動くが…
2024/06/11(火) 17:21:44.76ID:CF3fJF3U0
好きなエディタ使えよ
本当にプログラマーか?
2024/06/11(火) 18:43:04.96ID:wBzrLimR0
print(type(exit))
print(type(print))

<class '_sitebuiltins.Quitter'>
<class 'builtin_function_or_method'>
なんか違う
2024/06/11(火) 19:09:48.59ID:CbI6fxAV0
エディタも選べないこんなプログラマじゃ~♪(´・ω・`)
2024/06/11(火) 19:11:21.88ID:wBzrLimR0
秀丸があればラッキー
無ければサクラエディタ
2024/06/11(火) 21:30:27.12ID:sj+Gxn4o0
皆がなんでpycharm好きなのか、分からない
2024/06/11(火) 21:40:42.64ID:wBzrLimR0
メモ帳で書いても大して変わらないと思うけど、
なんかIDEにすごい思い入れがある人がいる
2024/06/11(火) 21:43:03.77ID:Lim+E2gM0
charmされてるのよ
2024/06/11(火) 22:11:38.27ID:sj+Gxn4o0
>>23
そうなんだろうけど
vs codeは見易いし、jsonビューアーとか
オマケも豊富だし、何よりcopilot君が賢いし、ショートカットも豊富
pycharmのcharmは何なのだろうか
2024/06/11(火) 23:06:04.10ID:ueBrLqe10
pycharm最近つかってないな
入れてアプデはしてる
26デフォルトの名無しさん (ワッチョイ ffc2-xov0)
垢版 |
2024/06/11(火) 23:50:46.45ID:3zjiFVVb0
【AI】IQ100超えを達成したAIモデルのClaude 3は「いい性格」を持つようにトレーニングされている [すらいむ★]
https://egg.5ch.net/test/read.cgi/scienceplus/1718025035/l50
27デフォルトの名無しさん (ワッチョイ 7f4b-IF49)
垢版 |
2024/06/12(水) 03:48:43.35ID:wiBZI5kf0
React開発しかしてないけど
VSCodeの方が良いんだろうなって思いながら
課金してるからPyCharmしか使ってない

AIアシスタントは
日本語で聞いてるのに英語で返してきたり
改行無しでコード返してきたりと表示バグ多すぎてうんち
2024/06/12(水) 04:57:30.69ID:rJNLeKrU0
VSCode
Spyder
この2つよく使う

真面目に動かす気が無い時の下書きはサクラエディタ
notepad++とかも使った事がある
左に行番号が出るのだけは最低条件

半角スペース全角スペース、タブスペースを見分けやすいエディタが理想
マルチコンソールはもっと理想
総合的にはVSCodeかな

idleは公式のpythonだといいがanacondaだとメリットなし

pycharmを使ったことがないので良さを伝えて欲しい
少なくともspyderに対するメリットだけでも
29デフォルトの名無しさん (ワッチョイ 6f64-qUdF)
垢版 |
2024/06/12(水) 08:17:03.68ID:ygAK9GXe0
>>28
無料版があるんだから試してみたら?
俺はpythonは最初は2,3種試したが今はpycharmしか使ってないからわからない
2024/06/12(水) 08:56:21.63ID:j9iMATnj0
>>24
VS codeのcopilotって無料?
Visual Studioは有料なので…
2024/06/12(水) 09:00:09.54ID:j9iMATnj0
>>30
なるべく高機能がいいが…

VS Codeなのかな…?
2024/06/12(水) 09:19:48.41ID:ctznX83Y0
普通プログラマーならこんなところでグダグダ聞く前に自分で試すと思うが
2024/06/12(水) 09:31:22.20ID:j9iMATnj0
>>30
VS codeのcopilotって無料?
Visual Studioは有料なので…
2024/06/12(水) 11:11:53.81ID:NEpu77js0
キショ
2024/06/12(水) 11:18:38.82ID:j9iMATnj0
>>28
VSCodeとSpyderって、
違いはどんな感じ?
2024/06/12(水) 11:33:59.01ID:NEpu77js0
もういいって
2024/06/12(水) 11:39:54.17ID:j9iMATnj0
>>28
VSCodeとSpyderって、
違いはどんな感じ?
38デフォルトの名無しさん (ワッチョイ 137c-YJZU)
垢版 |
2024/06/12(水) 11:51:45.41ID:82S1eyZp0
vscodeの良い所はブラウザ版がある事
Codespacesと併せてiPad1つ持って旅行行っても旅行先から仕事出来る
2024/06/12(水) 11:52:54.95ID:Tl5QrRZG0
自称C++プログラマーw
2024/06/12(水) 11:55:45.58ID:NEpu77js0
よくここまで気持ちの悪い自演ができるな
失敗してるし
41デフォルトの名無しさん (ワッチョイ 6ffc-u5ZD)
垢版 |
2024/06/12(水) 12:21:04.03ID:xPanc61P0
>>38
ノマドコーダーってやつですね
一日一時間だけコーディングして
残りは目いっぱい旅を満喫するという
素敵な生き方だと思います
2024/06/12(水) 12:27:19.16ID:j9iMATnj0
>>38
なるほど。いいね。

VS codeは他のプログラム言語で使ってるが、
ちょっと簡素過ぎるっって感じだが、
慣れの問題なのかな…?
2024/06/12(水) 12:30:59.47ID:NEpu77js0
まだやるの?w
2024/06/12(水) 12:32:51.66ID:j9iMATnj0
>>38
あとは、
Pycharmってやつなのかな…
ライトな感じなのかな…?
2024/06/12(水) 12:34:54.48ID:NEpu77js0
最後まで見届けてやるよ
ほれ頑張れ頑張れ
2024/06/12(水) 12:59:28.71ID:j9iMATnj0
>>38
あとは、
Pycharmってやつなのかな…
ライトな感じなのかな…?
2024/06/12(水) 14:21:36.16ID:NEpu77js0
え、それだけ?
しかも間空いてるし
2024/06/12(水) 15:29:16.87ID:rJNLeKrU0
jupyter notebookやjupyter labもいいな
でもjupyterで怖いのは一応内部でpipが使えるので
anacondaユーザーがjupyterでpip使って環境吹っ飛ばすリスクか

condaならconda-forge入れて全部conda
49デフォルトの名無しさん (ワッチョイ e309-pbNV)
垢版 |
2024/06/13(木) 02:54:45.23ID:PAaiBuyr0
人間に匹敵する知能を持った汎用人工知能を開発した研究者に総額100万ドルの賞金を授与するコンテスト「ARC Prize」が開催
50デフォルトの名無しさん (アウアウエー Sadf-Gk+6)
垢版 |
2024/06/13(木) 11:15:51.36ID:fHN6F3J2a
IQ = 偏差値 x 2
2024/06/13(木) 15:01:44.69ID:k+kdiXjY0
サクラエディタ使え
NGNG
あぼーん
2024/06/13(木) 20:12:18.47ID:jAiA3Tg10
tensorが
わかりずらい
2024/06/13(木) 21:28:34.31ID:cf70fyi60
材料系なので元から知ってる
2024/06/13(木) 21:58:11.54ID:If+UvtS00
それとはちゃうぞ
2024/06/13(木) 22:50:08.10ID:dXtus5+90
pytorchのtensor型で4階テンソル作って弾性解析してる人はいるのかどうか
2024/06/13(木) 23:00:38.81ID:cf70fyi60
相対論の計算にも使える
58デフォルトの名無しさん (アウウィフ FF67-Gk+6)
垢版 |
2024/06/14(金) 17:05:57.93ID:wrlhIGAuF
応力テンソルなんてタダの行列だしな
59デフォルトの名無しさん (ワッチョイ e310-pbNV)
垢版 |
2024/06/15(土) 08:13:27.98ID:h+pAIb350
AIに組み込まれた検閲による命令拒否を打ち消してあらゆる種類の質問に応答できるようにする「アブリテレーション」とは?
2024年06月14日
※自分の身近な人の嘘や陥れようかが話されたことと実際の動き【動画撮影含む】っを解析すれば判明
スポーツで動的シミレーションなどをする不正をしているや審判の判定がおかしいも判明
日常生活の動きも同時に併用されればボイス・トォ・スカルを使用しているかが判明

スマフォにAIが搭載されるので容易に判定
120フレームと8k【人間の網膜の解像度と同じ】あればかなり制度が上がる

相手の望まない手助けは数週間持続する高いストレスを与える!
2024.06.13
↕サイコパスはどう考えるのかな
使えない人」を排斥するとき周りの人の心は痛みにくいと判明
2021.05.22 SAT
ネット上で問題発言をする人は、暗い性格特性「ダーク・トライアド」かもしれない
2021.04.02 FRI
ナルシストは他の人よりも早くCEOの地位にたどり着く
2021.02.09 TUE
つい被害者を責めてしまう「公正世界仮説」とは何なのか?
2019.07.22 MON
「無能」でもOK? 社会的地位の高い人ほど信頼されやすい理由とは
2019.06.02 SUN
60デフォルトの名無しさん (ワッチョイ e310-pbNV)
垢版 |
2024/06/15(土) 08:13:51.70ID:h+pAIb350
「問題を指摘する人」に問題があると思い込む心理バイアス「自発的特性転移」が陰謀論を生んでいるという主張
2024年05
悪いニュースを伝えた人は理不尽に嫌われてしまうことが明らかに
2019.05.17
「恋人がサイコパス」だった時の見分け方とは
2018.12.09 SUN
ロンドン市民の娯楽だった?!近代イギリスの公開処刑
2023/12/17
スラップ訴訟
>>ある程度の発言力や社会的影響力のある、社会的に優位といえる立場の者が、特に発言力や影響力を持たない相対的弱者を相手取り訴訟を起こすこと。
巨大IT企業から「法的措置をちらつかせる停止通告書」を受け取った場合の対処方法とは?
2024年02月01日 08時00分
61デフォルトの名無しさん (ワッチョイ 6fe6-pbNV)
垢版 |
2024/06/15(土) 10:22:47.60ID:sguIT4c60
サイバーエージェント、画像認識できる75億パラメーターの日本語LLM公開 商用利用OK
サイバーエージェントは6月13日、日本語大規模言語モデル(LLM)に画像認識機能を追加した大規模視覚言語モデル(VLM)「llava-calm2-siglip」を公開した。

「ChatGPT」画像を見ながら人間みたいに話せる新機能、今後数週間でリリースと予告
OpenAIは6月14日、同社の公式Instagramアカウントを通じ、ChatGPT(GPT-4o)に音声と映像を同時に理解する機能を追加し、今後数週間以内にリリースすると発表した。

画像生成AI「Stable Diffusion 3 Medium」公開 プロンプトの理解力が上がり、リアルな画像が生成可能に
Stability.aiは6月12日、同社が開発する画像生成AI「Stable Diffusion 3」シリーズの最新モデル「Stable Diffusion 3 Medium」を発表、無償の非商用ライセンスおよびクリエイターライセンスの下で利用可能だ。
62デフォルトの名無しさん (ワッチョイ 1ad9-Av3Z)
垢版 |
2024/06/16(日) 05:47:56.48ID:Jxkkspwa0
正体不明のボイス・トォ・スカル
マイクロ波聴覚効果の機能より

神の声兵器は機器の場所が割れているので
ハッキング下と奪取後に器機を複製できた音を宣言していた

電磁波音波なのでむやみに器機に仕掛けると誰かが攻撃しているとすぐに設置したものは察知するが
その監視網をかいくぐるということは一発で危機をジャックしたことになる

そして機器の性能は年々よくなるので自分に行って見分けがつかないくらいになると器機使用者が幻覚を見ていると錯覚し始める
63デフォルトの名無しさん (ワッチョイ 739c-Av3Z)
垢版 |
2024/06/16(日) 07:41:31.41ID:vA0Aa3wa0
量子テレポーテーション
光より早いは光の振動数より早くなるという意味
振動するはジグザグなのでより線に近くなっている状態なので坊でついている状態
ワーム・ホール
全ての者が振動しているのでその振動幅を多くして1回折り曲げた状態でAB感が接触している状態を話している
でも移動後に一気に反発して反対側に振り切れるのでそのエネルギーを物質が受けると・・・

ボイス・トォ・スカルのマイクロ波聴覚効果【1970年ごろ】の論文はマイクロ波を使用しているのでマイクロ波当確効果という題名
下記の電磁波を使用すれば題名がその波の名前に変化する
スマフォで使用されている波は【マイクロ波 ミリ波 テラヘルツ波】がある
なのでミリ波聴覚効果 テラヘルツ波聴覚効果 という特許名称になる

電磁波の種類は周波数によって分類される
電離放射線【波長が短い】とは、周波数が3000THz以上の高周波電磁波
非電離放射線【波長が長い】とは、周波数が3000THz以下の電磁波

大きく分類すると下記の5種類の電磁波が存在
1.放射線【X線 γ線】
2.光線【紫外線 可視光線 赤外線】
3. 高周波(電波)【サブミリ波 マイクロ波 超短波】
4. 中間周波【短波 中波 長波 超長波 極超長波】
5. 超低周波【超低周波には他の電磁波のように種類があるわけではなく、1種類しかありません。】
※量子テレポーテーションまで加速すると可視光線も見えなくなる
可視光線なども威力が出るとS線のようになるが各線の特徴が残る
2024/06/16(日) 22:44:25.60ID:ooPrWZhx0
scikit-learnの仕様に準拠したClassifierやRegressorをメンバ変数に取りたいんだけど、型の指定はどうすればいい?
BaseEstimator、ClassifierMixinあたりを指定してもfit()やpredict()の実装が型レベルで保証されないし、
Protocolを作ろうにもXのMatrixLikeやyのArrayLikeの定義がパブリックじゃなかったりオプション引数の内容が違ったりするし(たとえば xgboost.XGBClassifierとlightgbm.LGBMClassifier)
65デフォルトの名無しさん (ワッチョイ da11-Av3Z)
垢版 |
2024/06/17(月) 06:58:45.82ID:Yz55GwEO0
【マイクロ波センサー】長距離でも壁があっても動きを検出!
↓2010年ごろには完成
高齢化社会を支える“見守りシステム”の開発に成功-カギを握った半導体ソリューションとは
↓2026年ごろにさらに性能工場
旭化成、ミリ波・マイクロ波帯の空洞共振器による微小金属検査システムを開発

男女関係なく陰部を撮影
一度でも盗撮されていれば正確な色合いの・・・
初期型は赤外線センサー【自動ドアのセンサなど】

子どもが言語を獲得していくのと同じようにAIモデルに学習させることに成功
AIを使って「赤外線カメラ画像のフルカラー化」に成功!

世界中で横行
2024/06/17(月) 09:26:44.82ID:BdXFoAev0
脳味噌に電波を浴びすぎると、スレ違いを認識できなくなる
67デフォルトの名無しさん (ワッチョイ 1aba-Av3Z)
垢版 |
2024/06/18(火) 13:52:34.66ID:LAg3uLnk0
GPT-4oがAIベンチマークのARC-AGIで50%のスコアに到達、これまでの最高記録である34%を大幅に更新
2024年06月18日
※さらに最適化すれば70%以上も可能な模様

スマホに搭載可能な小型透視チップが開発される
2024年06月18日
68デフォルトの名無しさん (ワッチョイ 1a85-Av3Z)
垢版 |
2024/06/19(水) 04:09:48.61ID:Z3xOIU7u0
ボイス・トォ・スカル
スポーツで試用しているとそっく露呈

選手の動きを撮影してそれを2倍.4倍...スロー再生すれば明確に使用しているを見つけられる
通常の者でも動けなくとも音と動作は見えているのでそれをシミレーション【通常の者主軸】にあてはめて動作をみればよい
それにプラスΑでそれが可能な回数を数学を用いて算出【科Ⓚ立論や物理的法則の確率論】すれば明らかにおかしいが判明

人間の筋肉量などを基本にの運動能力を設定しておくこと
さらに公共の場で日常生活のⓀ感の鋭さを調べれば本人がその能力があるかがわかる

知力の方は根気よく罠にかけるように会話をしていけば露呈する
69デフォルトの名無しさん (ワッチョイ 1aa7-Av3Z)
垢版 |
2024/06/19(水) 07:17:52.76ID:Z3xOIU7u0
レーザーで「トリウム原子核」を励起することに成功、原子核時計などの革新的技術への道が開かれる
2024年04月30日


量子もつれの伝達速度の限界を解明することに成功!
2024/04/02

世界初!「量子もつれ」の画像撮影に成功
2019/07/15

量子テレポーテーションとワーム・ホールの移動速度判明
地球上に幽霊も神も観測可能なのになぜ観測不能?
量子テレポーテーション中は量子のもつれがないので双方観測不能
など考えましょう
70デフォルトの名無しさん (ワッチョイ 766f-Av3Z)
垢版 |
2024/06/20(木) 10:14:12.07ID:gE9bPm4O0
正体不明ぼいす・とぉ・すかる【非接触型ムーンショット一式】

AIも発展してきて論文全て読み込ませて作成可能のAI返答なので実在している

世界中の建前
器機所持者と機器秘所持者と機器非所持者ぼいす・とぉ・すかる=非接触型ムーンショットそんな物無い!
かくなる上は統合失調症だ!
煩いので統合失調症を薬や自殺したことにしてカルテに!
さらに最近は作成しやすいので脇が甘いチームを見つけ次第コロナや感染症で死亡したことにします!

世界中の本音は現実は無慈悲
内臓疾患やバイオテロでの殺害!
統合失調症寿命を平均25年短く殺害!

非器機所持者に
世界で初めて固体電池を採用しパワー・安全性・耐久性・バッテリー寿命が超絶高まった最大出力4000Wのポータブル電源「YOSHINO B2000 SST」は家電を複数余裕で動かせてUPSとしても使用可能
2023年12月28日
※最上位は最大出力 6000w
これを最低4機?被害者に向けて配置して合計24000wの電磁波を集中できる配置にしていると犯人は宣言

ウナギの放電」は近くの生物の遺伝子を組換えていた!?
2023/12/11
71 警備員[Lv.1][新芽] (ワッチョイ fff4-scSS)
垢版 |
2024/06/20(木) 18:19:06.62ID:tUncCqLZ0
Pythonを使ったことある人土のくらいおる?
2024/06/20(木) 18:30:58.67ID:s0ykRolS0
土人はおらんぞ
73 警備員[Lv.2][新芽] (ワッチョイ fff4-scSS)
垢版 |
2024/06/20(木) 18:45:45.92ID:tUncCqLZ0
誤字ってたー
2024/06/20(木) 18:48:08.59ID:tUncCqLZ0
すみません今pythonとjavascriptについてのスレッドたてたので来てほしいです。
https://mevius.5ch.net/test/read.cgi/tech/1718875829/
2024/06/20(木) 23:49:44.95ID:w2ydgKL90
そういうのはいいから
1人でやってろ
お呼びじゃねーんだよ
76デフォルトの名無しさん (ワッチョイ 1a77-Av3Z)
垢版 |
2024/06/22(土) 07:59:23.85ID:EOdp67Q+0
Anthropic、AIと共同作業ができる「Artifacts」 チャットAIの役割は対話から“協働”へ
https://ascii.jp/elem/000/004/205/4205539/
77デフォルトの名無しさん (ワッチョイ 7616-Av3Z)
垢版 |
2024/06/22(土) 15:08:26.44ID:GlPOaJ+f0
加熱するLLM開発競争に冷や水、オープンモデルの組み合わせだけでGPT-4o越えの事実
https://wirelesswire.jp/2024/06/86709/
2024/06/23(日) 15:47:49.28ID:3wWyBI6v0
ありがとうPython、本当にありがとう
ピトンとか読んでたけどパイソンだったんだね
yt-dlpとか神かがってる。規制かかりそうで人にはこんな便利なものがあるとか言えないw

うおおお、今日もsudo pipだ!
sudo pipと普通にpipで使い分けてる!
79デフォルトの名無しさん (ワッチョイ 3f4b-cRNc)
垢版 |
2024/06/23(日) 19:06:13.38ID:ib9hnzEE0
ネイティブ発音はパイパン!だから今日から使うように!

PyCharmのAIアシスタントの
コードブロックと応答エリア逆転表示バグにイライラするし
日本語で聞いてるのに英語で返してくるし
AIアシスタントで解決できないことが
無料のCopilotで解決できてしまう
年間で金払ってるのにマジでイライラする

やっぱ資金力の差かな?
PyCharm捨てるべきか
2024/06/23(日) 20:31:35.85ID:22Gx8r8ld
>>79
もうすぐGitHub/MSがAI自動開発環境であるCopilot Workspaceをリリースする
遂にAIがプログラマを代替する時代が本格的に到来するわけだ
そうでなくてもJetBrainsは長く持たないだろうけど、我々はそんなことよりも自分の心配をすべきだろう
2024/06/24(月) 01:07:55.23ID:H3b3wOos0
https://news.mynavi.jp/techplus/article/20240620-2969755/

Jetbrains AI supportでGeminiの最新言語モデルも使えるようになる
2024/06/24(月) 01:12:39.10ID:3ZQaTyEA0
>>81
何?


テキストエディター?
2024/06/24(月) 08:29:11.02ID:4ji9YFqV0
>>82
PyCharmの組み込みAI
2024/06/24(月) 09:10:44.81ID:3ZQaTyEA0
>>82
ほう

PyCharmは使いやすいのかどうか…?
85デフォルトの名無しさん (ワッチョイ 0f4f-yKGB)
垢版 |
2024/06/24(月) 10:35:50.74ID:DSxd+1cL0
統合失調症 100人い1人
本当に音波電磁波攻撃だった場合
統合失調症の寿命は短いからして殺害されている

トロッコ問題にあてはめると
Aの線路に電磁波攻撃をしている者が100人いる
Bの線路に被害者が1人いる
トロッコに乗っている者も第三者
切り替えポイントに第3者がいる
間違いなく選んだ方の線路の者は全員死亡する

あなたはどちらを助けますか?
2024/06/24(月) 12:10:28.94ID:qmamFw0P0
もう自演はいいって
87デフォルトの名無しさん (ワッチョイ 3f69-yKGB)
垢版 |
2024/06/24(月) 12:58:10.35ID:CCgNkgcb0
統合失調症 2008年の段階で100人に1人
電磁波音波攻撃で【精神病院のカルテ情報より】統合失調症の寿命が短い
本当ならテロ行為をはるか昔からしているので下記の構図になる

トロッコ問題にあてはめて統合失調症を考えると
Aの線路に○○の各組織の各チーム100人作業している
Bの線路に統合失調症が各自1人いる状態で作業している状態
切り替えポイントに1人いて○○所属の者
トロッコに乗っている者が1人いて○○所属の者
※どちらを選択しても全員死亡する
切り替えポイントを利用してトロッコを横転刺したとしてもトロッコに乗っている者は死亡する

1.電磁波音波攻撃している者はこの図式の中にいるのかいないのか
2.もしこの図式で電磁波攻撃音波攻撃をしている者がいたとした場合どの場所にいるのか
等いろいろ考えましょう
トロッコ問題で検索すればほかにもパターンがあるのでそれも参考に考えてください

上記の問題は見やすすぎるので実際には
盗聴.盗撮.人海戦術.ハッキング.ガスライティング.ボイス・トォ・スカル.身代わりの者 等をあてはめれる図式にしないといけない
AIに問いを考えてもらえれば図式はすぐに完成する
図式は固定ですが現実はリアルタイムで変化していく図式になるのでAIゲームをプレイするようにすればそのような結果になっていく
2024/06/24(月) 17:44:40.67ID:U8NnPOJu0
こないだ馬鹿な態度で質問して
馬鹿にされて恨み持ったんかな
89デフォルトの名無しさん (ワッチョイ 4f68-BadG)
垢版 |
2024/06/24(月) 22:35:54.83ID:D2hINzcz0
白装束わいてんの?
2024/06/24(月) 23:25:32.81ID:uJ7CYiLU0
「Python でモバイル アプリを作成できますが、パッケージ化すると大量のバグが発生するリスクがあります」だって
作る前にわかって良かったわ
もし作成するようなら、素直にkotlinの勉強をしよう
2024/06/26(水) 06:05:10.07ID:O7IKaegW0
このスレってアタオカが多いな
92デフォルトの名無しさん (ワッチョイ 3f11-yKGB)
垢版 |
2024/06/26(水) 08:25:30.24ID:egC8x8gn0
神 精霊 絶大なエネルギーを使用可能
幽霊 人間を疲れさせるや一時操作可能
@エネルギーの貯蔵の仕方は➁そのエネルギーの発生方法はBそのエネルギーを貯蔵する方法はCそれだけのエネルギーの物体を科学で観測不能はなぜ

6G通信に使われるテラヘルツ帯の電波、脳細胞の成長を促進
2022/08/16
タンパク質の操作/マイクロ波等の照射が記憶に影響
2008/11/01
男性の精子の減少、携帯電話の使用と関係か 最新研究
2023/11/02
統合失調症.発達障害.各身体症状 など国力低下
人為的で身体攻撃
威力を測定すれば判明するのにテロリストを野放し

全ての精神病
@ 英キングス・カレッジ・ロンドンをはじめとするグループは、人間の脳内で発現している古代ウイルス由来のDNA配列を調べ、それがうつ病・統合失調症・双極性障害といった主要な精神疾患のなりやすさと関係していることを明らかにした。
➁九大、後の出来事が直前の出来事に錯覚を起こさせる脳の仕組みの一端を解明
2024/06/05
C幼児期の脳活動から18歳時点でのIQを予測できるという研究結果
2023/09/09
D3歳までに脳は形成される
E統合失調症などの患者に幻覚や妄想を引き起こす脳のネットワークがAIを使った研究で明らか

1立方ミリメートルの脳の断片をハーバード大学とGoogleの研究者がナノメートル単位で3Dマッピングすることに成功
2024年05月10日
※MRIで物理的に神経の接続問題観測可能

嘘つきの知的障碍者と精神障碍者や認知症の者発見

◇電磁波攻撃はあるとないどの思考【組織】の者が話しているのかな
マイクロ波聴覚効果やボイス・トォ・スカル発見可能
電磁波している者守りたいもの守りたくないものの判別方法は各対象者の将来で名よある地位やよい未来の映像と悪い未来の映像を見てもらえば副交感神経と交感神経の差と脳波パターンをみたら判明する
93デフォルトの名無しさん (ワッチョイ 3fca-+orE)
垢版 |
2024/06/27(木) 04:50:30.18ID:mbmQwdn40
>>84
初心者は統合開発環境を使わない方がいい
2024/06/27(木) 08:08:16.34ID:z5OaD5um0
>>93
というと?
2024/06/27(木) 09:33:07.90ID:5uVBistr0
初心者は統合開発環境かJupyter Notebookでいいよ
どうせプログラミング初学者のほとんどは挫折するんだから、最初に余計な手間をかけて結果的に時間を無駄にするよりさっさと本題のプログラミングに入って挫折した方がよい
運良く継続できたなら、いずれ統合開発環境に頼らずに実行する必要性に直面するからそのときやれば十分
96デフォルトの名無しさん (ワッチョイ 0f43-AFOo)
垢版 |
2024/06/27(木) 16:19:15.18ID:g33sFP3s0
>>93>>95
二人が言う統合開発環境にVSCodeは含まれる?
2024/06/27(木) 16:48:40.32ID:PPGZXo3+0
>>96
そんなバチっと分類できるか?
支援機能の多いエディタで
カスタマイズすればほぼIDE
どっちだか定義したとこで使い方次第
2024/06/27(木) 17:31:01.57ID:nuUC97cQ0
vimだってIDEなんですよ!(´・ω・`)
2024/06/28(金) 07:18:15.83ID:uT69qW250
>>93
もしかしてメモ帳でコーディング?
2024/06/28(金) 09:06:11.76ID:vJmiUkkN0
結局、何がいいのか、
誰も答えられないという…
2024/06/28(金) 09:21:32.15ID:5vFH0KpM0
自前でなんとかできるVimmerやEmacsenは置いとくと
VSCodeかPyCharmの2択
102デフォルトの名無しさん (ワッチョイ 0faa-AFOo)
垢版 |
2024/06/28(金) 10:50:07.29ID:ZeY3idKp0
VSCode選んでたら問題ないレベルで普及してるぞ
2024/06/28(金) 12:44:36.66ID:EvkOX/Dd0
エディタやIDEも自分で選べないこんなプログラマじゃ~(´・ω・`)
2024/06/28(金) 12:50:38.17ID:Qk4w0MUTM
普通ed
2024/06/28(金) 13:00:05.59ID:vJmiUkkN0
>>101
VSCodeかPyCharmの違いは?
特徴は?
2024/06/28(金) 13:04:01.35ID:rQFt8Lx60
自分で試せよ
ゴミが
2024/06/28(金) 13:08:21.12ID:vJmiUkkN0
>>101
VSCodeかPyCharmの違いは?
特徴は?
2024/06/28(金) 13:18:23.35ID:zdp4Z9Zl0
>>105
>>107
109デフォルトの名無しさん (ワッチョイ 3f4b-cRNc)
垢版 |
2024/06/28(金) 20:59:25.84ID:1ROuz5Q70
PyCharm
環境構築が楽
引数や型のグレー表示
アニメミームプラグインは楽しい
2024/06/28(金) 22:23:37.65ID:lbLJULT+0
秀丸だけで何も困らんやろ
何をどう統合するんだ
どこかポチったら実行結果が別のウィンドウに表示されるとか?
そんなもん自力でコマンドプロンプト開いたらいいだけ
2024/06/28(金) 23:20:26.03ID:6m2W57qAd
電気を知らない野蛮人に電気の便利さを説くようなものだ
2024/06/29(土) 00:29:40.97ID:bF3Y/G1B0
>>99
手書きでなw
昔BASICの頃は一旦ノートに書いてたな
113デフォルトの名無しさん (ワッチョイ cfee-1nIH)
垢版 |
2024/06/29(土) 05:54:50.78ID:EiOc0G2L0
PyCharmって有料だろ。その時点でvs code一択だわ。
2024/06/29(土) 06:01:12.30ID:U/pvQw3t0
昨今はterapadユーザー減ったな
2024/06/29(土) 13:41:04.25ID:Wt8e36W70
>>113
無料バージョンもある
116デフォルトの名無しさん (ワッチョイ 4f5f-LJ/r)
垢版 |
2024/06/29(土) 14:22:38.26ID:LsytJO7D0
テキストエディタでいいだろ
2024/06/29(土) 14:45:58.99ID:+pYSh9gX0
結局、
誰も答えられないという…
2024/06/29(土) 15:02:20.09ID:cUVSjLCi0
君の受容体が欠けてるからだろ
2024/06/29(土) 15:34:23.68ID:pu8mOSDa0
利根川「世間はお前の母親ではない!( ・`д・´)」
2024/06/29(土) 15:43:24.98ID:Gn32ifYh0
何にでもただ一つの正解があるって思ってるんだろうな
2024/06/29(土) 16:47:53.08ID:PBXANAKE0
猫で何も困らないよね
122デフォルトの名無しさん (ワッチョイ cfd8-1nIH)
垢版 |
2024/06/29(土) 19:14:32.52ID:EiOc0G2L0
>115 知らんかった。使ってみよ。
2024/06/29(土) 22:58:00.22ID:4nEdFUH10
気づけばnppで済ましてる
124デフォルトの名無しさん (ワッチョイ caad-EXgL)
垢版 |
2024/07/01(月) 05:52:59.21ID:kUCBycwJ0
犯人不明ボイス・トォ・スカル被害者にしている者皆判明
AIで被害者が苦しんでいる映像を作成してそれで喜んでいる脳細胞を読み取れば使用しているかの判定
AIで自分が高みの見物ができるかどうかも判定
あとは下記を参考にして行えばよい

いじめで殺害したかも判明するので迷宮入り事件犯人を絞り込める
隠しカメラの場所も判明

忘れた記憶を再び思い出せるようにする脳細胞を発見!
2024.06.28
「あなたの一番古い記憶は?」人は覚えていても2歳以前の記憶にアクセスできなくなっている
2023.11.30
なぜ私たちは起こってもいない間違った記憶をしてしまうのか?
2023.11.27
自分でも気づいていない「記憶の間違い」を脳波で判断できると判明
2023.10.19
富山大、睡眠中の脳で行われている推論の演算を神経細胞レベルで解明
2024/06/26
サイコパスはためらわない?−−嘘つきの脳のメカニズム
2019/09/26

脳を刺激して特定の記憶を呼び戻す技術「記憶プロテーゼ」を開発
2024/02/21

「0」を”思う”ときの脳活動は「1」に近い!捕食者への恐怖がゼロの根幹だった?
2024.03.07
>>MEGを使うと、脳内でわずかに発生する磁場変化をとらえて、脳活動を記録することが可能です。
>>(※脳波計が脳の電気活動を読み取るのに対して、脳磁計は脳の磁気活動を読み取ります)

東工大、磁束集中器を用いない高感度「ダイヤモンド量子センサ」を開発
2024/06/07
>>日常的な検診や脳機能のより詳しい研究や、ブレイン・マシン・インタフェースの研究などへ大きく貢献できると期待されている。
2024/07/01(月) 09:00:11.31ID:836YlBfV0
テキストエディタってデバッグとかステップ実行とかできるの?
2024/07/01(月) 09:38:14.31ID:K012aBUx0
pdbとつなぎ込めるならできるんじゃない?
エディタが元々デバッガ意識してる作りじゃないとUIが厳しくなりそうだけど
2024/07/01(月) 12:40:13.71ID:pMB5Vc+c0
>>125
できるよ
今はLanguage Server ProtocolとかDebug Adapter ProtocolがAtomやSublimeやNeovimとか一般にテキストエディタと呼ばれてるけどプラグイン使えばビジュアルではもできてIDEと遜色ない
境界線が曖昧になってる

エディタ内でコンソールウィンドウ起動してデバッグ/ステップ実行なら昔からだいたいどのエディタでもできた
2024/07/01(月) 17:34:20.43ID:tqKU/vEa0
また、
どうでもいいやり取りが始まった…
2024/07/01(月) 18:45:06.06ID:9VBBA37q0
また自演が始まった
2024/07/01(月) 23:56:38.02ID:CgZJmBCn0
2024年にAtom?
2024/07/03(水) 17:29:09.96ID:SLJzfMqN0
python3でpip install sympyをうつとinstallにエラーが出るんですが原因わかりますか?
2024/07/03(水) 18:05:06.54ID:wXE89hiua
何で出てるエラー書かないのかわかりません
2024/07/03(水) 18:15:03.45ID:A0SNNsuZ0
>>132
バカはほっとけ
2024/07/03(水) 18:43:41.22ID:/LjN+Q17M
先祖の悪行だろ
135デフォルトの名無しさん (ワッチョイ 8ed3-CB8S)
垢版 |
2024/07/03(水) 20:00:16.10ID:SLJzfMqN0
>>132
>> pip install sympy
File "<stdin>", line 1
pip install sympy
^^^^^^^
SyntaxError: invalid syntax
136デフォルトの名無しさん (ワッチョイ 8ed3-CB8S)
垢版 |
2024/07/03(水) 20:06:15.83ID:SLJzfMqN0
すみません自己解決しました
2024/07/03(水) 20:12:35.50ID:aR0C9sJC0
pythonプロンプトでpip実行w
2024/07/03(水) 20:28:11.65ID:kB2VnPN40
>>> import pip
>>> pip.main(['install', 'sympy'])
139デフォルトの名無しさん (ワッチョイ a310-nMe1)
垢版 |
2024/07/03(水) 22:48:18.26ID:58lv5lpo0
>>136
俺もvscodeのコマンドラインで
pip install sympy
でインストールできなかったから解決方法教えて
2024/07/04(木) 04:12:08.95ID:H+976rVP0
>>130
Atomってまだ生きてたんだ
2024/07/04(木) 06:20:57.40ID:lmN3FC4c0
Pythonの実行ファイル化(exe化)について聞きたいのですがpyinstaller以外に実行ファイルにするアプリというかライブラリはありますか?
pyinstallerは結局PC上でPython及び環境をインストールして動かしてるらしくクソ遅いです。
できればバイナリ、もしくはCなどネイティブな実行ファイルにコンパイルできるものはありますか?
2024/07/04(木) 07:41:26.64ID:oW4sHAD80
>>141
CythonやPyPyを検討してみて
143デフォルトの名無しさん (ワッチョイ 4a2a-bp6Y)
垢版 |
2024/07/04(木) 07:42:44.80ID:fZFY8LBn0
>>135
オレ以外にもいるんだな、これやる人...

> $ python3
> Python 3.11.9 (main, Apr 2 2024, 13:43:44) [GCC 13.2.0] on linux
> Type "help", "copyright", "credits" or "license" for more information.
> >>> pip install abc
> File "<stdin>", line 1
> pip install abc
> ^^^^^^^
> SyntaxError: invalid syntax
> >>>
144デフォルトの名無しさん (ブーイモ MMaa-qs9P)
垢版 |
2024/07/04(木) 19:38:05.25ID:BWgAM6lLM
>>141
そんなの初回だけだろ
2024/07/04(木) 19:55:46.26ID:lmN3FC4c0
>>144
Pyinstallerは毎回Python環境を作るって聞いたことあるのですが
2024/07/04(木) 19:56:00.91ID:lmN3FC4c0
>>142
ありがとうございます
試してみます
147 警備員[Lv.16]:0.00133031 (ワッチョイ a310-nMe1)
垢版 |
2024/07/04(木) 20:19:32.47ID:Q6sCpcJR0
vscodeでsympyをインストールしているんだが、

ソースにimportで記載すると
import sympy
^^^^^
とエラー表示される。
実行すると、
ModuleNotFoundError: No module named 'sympy'
になる。
なんで?
148デフォルトの名無しさん (ワッチョイ a755-NC2Y)
垢版 |
2024/07/04(木) 20:55:56.75ID:4t0XZ+UL0
pythonのsleniumで
毎日ログインしてスタンプ押すプログラム
使ってんやけど最近エラー出る。
なんでかわかる人?教えてちょんまげ
2024/07/04(木) 21:01:38.11ID:FXndbzzL0
pip使ってんのか
こえーな
2024/07/04(木) 21:08:08.25ID:9lUqOnIn0
>>147
sympyが入っていない
何かミスってるんだろう

>>148
だからエラーメッセージを貼り付けろって
2024/07/04(木) 22:17:14.82ID:oW4sHAD80
>>147
>vscodeでsympyをインストールしているんだが、
エスパーできなくもないが情報が欠落してると気づいてほしい
vscodeはTS製のエディタなのでsympyと直接関係を持つことはない
2024/07/04(木) 22:20:13.39ID:5PMrRJOQ0
powershellでpipしてインストールしてからvscodeでimportしろ
153 警備員[Lv.17]:0.00141021 (ワッチョイ a310-nMe1)
垢版 |
2024/07/04(木) 22:33:32.10ID:Q6sCpcJR0
>>150
>>151
ターミナルでpip install sympyすると
Requirement already satisfied: sympy in c:\users\******\appdata\local\programs\python\python312\lib\site-packages (1.12.1)
Requirement already satisfied: mpmath<1.4.0,>=1.1.0 in c:\users\******\appdata\local\programs\python\python312\lib\site-packages (from sympy) (1.3.0)
と出るのでインストールされているはず。

vscodeのターミナルでpip listすると
sympy 1.12.1
と出てくる。

しかしvscodeのソース表示でimport sympyがエラーになる。
154 警備員[Lv.17]:0.00141021 (ワッチョイ a310-nMe1)
垢版 |
2024/07/04(木) 22:35:28.46ID:Q6sCpcJR0
pip uninstall sympyしてpip install sympyするとインストールは完了するが、結果は一緒。
155デフォルトの名無しさん (ワッチョイ 3b58-nMe1)
垢版 |
2024/07/04(木) 23:46:27.85ID:VyMtzU5g0
>>153
>しかしvscodeのソース表示でimport sympyがエラーになる。
どんなエラーになるの
2024/07/04(木) 23:54:45.56ID:bSnYvqGqa
>>153
環境変数のPYTHONPATHにそのパスは設定されてるの?
2024/07/04(木) 23:59:56.62ID:Tl5tMt9o0
なんだこのバカどものやり取り
158 警備員[Lv.17]:0.00145299 (ワッチョイ a310-nMe1)
垢版 |
2024/07/05(金) 00:08:34.70ID:kwjzZSK40
>>155
>>147
159 警備員[Lv.17]:0.00150028 (ワッチョイ a310-nMe1)
垢版 |
2024/07/05(金) 00:12:39.32ID:kwjzZSK40
>>156
環境変数にPYTHONPATHという項目は登録されていない。
しかし同様にpipでインストールしたmpmathは動くぞ。

以前はsympyも動いていたんだがな。
その後にアップデート後か何かでなぜかsympyが消えていて、その後インストールしたがこのようになってしまった。
2024/07/05(金) 00:16:45.58ID:3L3B8blh0
ステータスバーで言語モードPythonを選択している状態ならそのとなりでバージョンも指定できる
そこがターミナルから実行しているpython/pipと異なってる

import sys
print(sys.path)
を実行したらわかる
2024/07/05(金) 00:36:21.03ID:UULOb/DK0
>>159
pipの時に使ってるpythonと実行時に使ってる時のpythonのバージョンが違うのでは?
162 警備員[Lv.18]:0.00150028 (ワッチョイ a310-nMe1)
垢版 |
2024/07/05(金) 00:40:15.83ID:kwjzZSK40
>>160
>>161
言う通りバージョンが違っていた。どうもありがとう。
163デフォルトの名無しさん (ワッチョイ 3bf2-gjd7)
垢版 |
2024/07/05(金) 00:45:36.68ID:SxXuENTl0
バージョンが違うんじゃなくてpip installした環境とVSCodeで指定した実行環境が違うだろ
2024/07/05(金) 00:48:56.33ID:UULOb/DK0
まあ正直その辺は初心者殺しだよ
linuxとかさらに地獄でシンボリックリンクを貼りまくるからね
なのでvscode+devcontainerが最適解になるわけだけど
165デフォルトの名無しさん (ワッチョイ 6ad6-EXgL)
垢版 |
2024/07/05(金) 08:35:39.57ID:GQkuHNKI0
銀河英雄伝説で考えるセキュリティ--将来の「帝国の双璧」が陥った罠とセキュリティ業界
https://japan.zdnet.com/article/35220819/
2024/07/05(金) 10:49:56.97ID:m7ItiyZi0
>>153
pythonのインタプリタ起動してんのに
その中でpip使ってるからだろ
前のレスに答えてくれてる人いるぞ?
自分中心すぎるなお前
2024/07/05(金) 10:50:55.60ID:m7ItiyZi0
>>166
あ、ごめん
違う話だった
vscodeとpython でパスが違ってんだろ
2024/07/05(金) 12:41:02.07ID:vdatRhiw0
pyhon+vscodeの学習はまずvenv作ってvscodeのインタプリタにvenv指定から始めよ
それ以外はない
169デフォルトの名無しさん (ワッチョイ 8732-gjd7)
垢版 |
2024/07/05(金) 13:24:54.29ID:DtMV2yWt0
>>168
これ
170デフォルトの名無しさん (ワッチョイ 8732-gjd7)
垢版 |
2024/07/05(金) 13:27:54.35ID:DtMV2yWt0
>>167
もっとちゃんと謝って
2024/07/05(金) 16:52:25.24ID:j6N6PWkn0
module3.py
module2.py
folder
-__init__.py
-consts.py
-module1.py

<__init__.py>
from . consts import *
from . module1 import Class_A

<consts.py>
A=0
B=0
...

<module1.py>
class Class_A():
...

<module2.py>
from folder import *
class Class_B():
def aaa(self):
self.class_a=Class_A()

<module3.py>
from module2 import Class_B
print(A)

module3を実行でNameError: name 'A' is not definedがでます。module3でconsts.pyをインポートする以外でなにか方法ありませんか
2024/07/05(金) 17:13:03.78ID:j6N6PWkn0
記載ミスがありました。これでAのネームエラーがでます

<module3.py>
from module2 import Class_B
class Class_C(Class_B):
def bbb(self):
self.aaa()
if __name__ == '__main__':
class_c=Class_C
class_c.bbb()
print(A)
173デフォルトの名無しさん (ワッチョイ 877c-5+Ml)
垢版 |
2024/07/05(金) 18:12:47.92ID:/nhnoDEU0
そりゃそうだろうね
174デフォルトの名無しさん (ワッチョイ cd5f-D9Rd)
垢版 |
2024/07/09(火) 19:42:58.64ID:YnhmosHM0
strでキャストしましょう
2024/07/13(土) 16:07:01.14ID:9PFDbe2C0
self.__next_f.push() でバラバラになってるのをがっちゃんこするモジュール無い?
2024/07/13(土) 16:16:18.93ID:h5PR0uBa0
Windows版CPython 3.12.4に同梱のPython Launcherのコンソール非表示版(pyw.exe)が壊れてるっぽい
コンソール版のpy.exeと同じ動作になってしまって、コンソールが非表示に出来ない

試しに、3.10.11に同梱のpyw.exeと入れ替えてみると想定の動作になる

あんまり使ってる人いないのかなぁ
2024/07/13(土) 17:29:23.72ID:h5PR0uBa0
3.11以降は全部同じ動作(コンソールが立ち上がる)になった
これだけ前からだとすると、壊れてるっていうのと違うんだろうけど、よくわからないなぁ
-64オプションが廃止予定になったくらいで、特に関係ありそうな変更はなさそう
別途起動オプションがあるかと思ったけど、見つからなかった
もしかしておま環なのかも

試したインストーラーはこちら(amd64版も同梱)
https://www.python.org/ftp/python/[python version]/win32/launcher.msi
結局、想定の動作になる最新のランチャーは3.10.11のものということなるみたい

以下、テストファイル(Windowsモード用拡張子 *.pyw で保存、py.iniは未使用)

これをダブルクリックで起動すると、コンソールは現れないのが本来の状態(のはず)



#!/usr/bin/env python
import tkinter

root = tkinter.Tk()
root.geometry('300x150')

label = tkinter.Label(text='テスト文字列')
label.place(x=100, y=60)

root.mainloop()


興味があったら追試よろしく
2024/07/13(土) 18:47:25.72ID:YaCWuMoz0
>>177
shebangが#!/usr/bin/env pythonの時だけコンソール出るな
#!/usr/bin/env pythonw、#!/usr/bin/python、バージョン指定あり、shebangなしならコンソール出ない
2024/07/13(土) 19:10:40.79ID:h5PR0uBa0
>>178
追試ありがとう

pyw -3 hoge.pyw でもコンソール非表示になった

以前のランチャーは shebangの "python"の文字列しか見ていなかったと記憶しているけど、
もともと(今も)は #!python というのをデフォルトにしているようなので、
どうもそれ以外の扱い方が少し変わったみたいだね

今までだと、同じファイルをそのまま拡張子だけ変えるだけで済んだので、
クロスプラットフォーム対応や、python2・3両対応はちょっとめんどくさくなりそう
posix側への対応のために、/usr/bin/envは書いておきたいところなんだけど
180デフォルトの名無しさん (アウアウエー Sa13-pk1M)
垢版 |
2024/07/13(土) 22:45:23.80ID:nTr8FyGBa
mamifestやろ
181デフォルトの名無しさん (ワッチョイ d5d4-Pe0Q)
垢版 |
2024/07/15(月) 15:45:51.64ID:wT4qVw/w0
質問
VS Codeのワークスペースとvenvの仮想環境との対応付けってどこに記録されてるの?
仮想環境を作るとポップアップが出て「このワークスペースを作成された仮想環境で常に開きますか?」という表示されると思うけど、あれで No してしまった時に設定し直すようなことをしたい
ローカルの .vscode フォルダにはそれらしきものはないし
Windowsでの話を知りたい
2024/07/15(月) 16:12:11.69ID:Yn9vf8AX0
Ctrl+,でsettings.jsonを開いてそこに設定する

"python.venvFolders": [
"envs",
".pyenv",
".direnv"
]
183デフォルトの名無しさん (ワッチョイ d5d4-Pe0Q)
垢版 |
2024/07/15(月) 18:56:23.56ID:wT4qVw/w0
サンクス
2024/07/16(火) 00:05:41.97ID:nQsNVpqE0
みんなGUIはTkinter使ってるの?
PysimpleGUI は有料になってしまったよね
2024/07/16(火) 00:08:28.54ID:m7lOj4hf0
TkEasyGUIがお勧め
中身はTkでPySimpleGUIとほぼ同じメソッドを実装している
2024/07/16(火) 00:14:53.75ID:vGmGhS3Cd
Streamlitでいいよ
Pythonで作ったところでどうせ配布するようなものには使えないんだからブラウザで十分
2024/07/16(火) 02:57:46.60ID:SHC7aw2z0
惰性でwx
1ウィンドウで好きにしたいときはpygame
2024/07/16(火) 08:04:33.89ID:9FhpPUaP0
fletちゃんだな
189デフォルトの名無しさん (ワッチョイ 3de5-kXex)
垢版 |
2024/07/16(火) 08:12:10.30ID:Qu1p+Dch0
最近PythonQt触り始めた
190デフォルトの名無しさん (ワッチョイ 31a3-Pe0Q)
垢版 |
2024/07/16(火) 11:56:58.86ID:0jQtFcvp0
質問です!
現在、pygameでアケコンの入力をフレーム単位で取得して表示するコードを作成していて表示できるようになったのですが、ストリートファイター6内で出力されるフレームと誤差が出てしまいます。
これを解消する方法はありますか?うまく説明できなくてすみません。
2024/07/16(火) 11:57:40.87ID:UeX1R/NC0
PySimpleGUIは早くも4系はpipからバージョン指定インストール出来なくされてるね。
自分は有料化を聞いた時に保存しておいた無料最終版4.60.5のwheelがあるので現状はPySimpleGUIのまま。
wheelを手元に残しておけばネット上から消されてても再インストール可能なのが強み。
pipのインストール元鯖やそれらミラーのインターネットアーカイブでも漁れば多分まだ生き残ってる所もあると思う。
TkEasyGUIは、試してみたけどPySimpleGUIでエラー無しでもimport変更するとエラーになるのでまだ様子見。
import変更だけで済ませたいならFreeSimpleGUIってのもあって、こちらは試したがエラー出なかった。
ただ、ゼロから作ったというTkEasyGUIとは違い、こちらはフォークらしいのでいつクレーム入って使えなくされるか不明ですが。
2024/07/16(火) 12:26:10.18ID:m7lOj4hf0
TkEasyGUIもDMCAされる可能性はあるんだけどね
流石に同じAPIはやり過ぎだし
2024/07/16(火) 12:26:40.97ID:CpUQ4UHt0
tkinterとttkbootstrapがいい
2024/07/16(火) 12:30:14.87ID:m7lOj4hf0
ただ開発者が日本人でまだそんなに使われてる訳ではないからお咎めなしの可能性もある
2024/07/16(火) 12:38:08.10ID:2G12eFJt0
pysideとQtQuickやってるけど
他のに移ってもいいんじゃねと思っている
2024/07/16(火) 13:35:33.02ID:Bb96ADM40
内包表記とか、
なかなか慣れない

C++から見ると
2024/07/16(火) 18:19:21.85ID:CPxZcHbW0
一時的な変数作るのそこまで嫌かと思うな
2024/07/16(火) 18:40:09.70ID:9FhpPUaP0
後ろから書かないと分からなくなる
2024/07/16(火) 19:00:14.19ID:mC6azxfu0
個人的には
条件→結論って流れの方が好き
200デフォルトの名無しさん (ワッチョイ 85b9-hIhh)
垢版 |
2024/07/16(火) 21:07:25.24ID:PlOIp+R20
可読性っていうことなら、内包表記もインデントすればいい
201デフォルトの名無しさん (ワッチョイ 7a50-U8Y+)
垢版 |
2024/07/16(火) 21:17:05.37ID:eiV6OZVR0
そういう仕様変更に耐えられないコードを書いてはいけないんだぜ?
2024/07/16(火) 21:24:57.64ID:CPxZcHbW0
python改行に弱いよな
2024/07/17(水) 00:18:01.87ID:wOcdHonj0
ハァー
オブジェクトわかりにくい
関数は簡単なのに…
変数にクラス名を入れて、その変数からインスタンス内のメソッドを実行とかややこしい…
2024/07/17(水) 00:37:45.89ID:bhjAMJd60
ややこしいか?
2024/07/17(水) 00:53:57.62ID:JDqvl6rk0
オブジェクトは必要になる時がくれば、なるほどこういうことかと理解できるもの
車とか動物とか言われても意味がわからない
2024/07/17(水) 01:20:38.51ID:Oiv09A9S0
>>196
あと、
クラス変数とインスタンス変数が慣れないな

C++から見ると
2024/07/17(水) 10:28:37.81ID:ArDuB9vV0
どこか簡単にすると
別の場所がぐちゃぐちゃになる
2024/07/17(水) 10:29:22.94ID:ArDuB9vV0
>>205
あの説明まじでダメだと思うけどみんなコピぺしてるな
209デフォルトの名無しさん (ワッチョイ 897c-hD31)
垢版 |
2024/07/17(水) 12:54:20.89ID:yeE+g+2L0
車と動物で良いんだぞ
オブジェクト指向理解すればするほど良い例だと分かる

入門向けとしてはファイナルファンタジーで教える方が良いかもしれない
ファミコン版のFF3とかが良い
2024/07/17(水) 13:25:01.62ID:eTk+Gzw70
継承とか多態とかの概念を
初めから教える必要あるんかな
同じ用途のデータを混乱しないように一まとめにして
専用関数も紐付けしておくくらいの理解から始めればいいと思うんだが
2024/07/17(水) 13:28:16.43ID:HgZgBdgi0
スレ違い
212デフォルトの名無しさん (ワッチョイ 897c-hD31)
垢版 |
2024/07/17(水) 13:41:50.13ID:yeE+g+2L0
>>210
データを纏めるだけなら構造体で良い

FFみたいにキャラのステータスが状態
そのキャラのジョブが出来る行動(ジャンプや白魔法や黒魔法)を振る舞いとして定義できる事に意味がある
2024/07/17(水) 13:52:54.44ID:VcSrM74t0
そんな大したもんじゃないよ
関数をライブラリ化して便利に使おうとしても、
どういうデータを渡したらいいかを熟知しないと使えない

データ形式もライブラリ側で指定したのがオブジェクト
2024/07/17(水) 14:31:22.91ID:eTk+Gzw70
>>212
振る舞いなんて抽象化するより
単純に専用関数って思うくらいで十分だと思うけどな
2024/07/17(水) 18:58:27.34ID:JDqvl6rk0
>>209
いや、あれってオブジェクト指向をわかっている人が、その知見水準で説明してるから
そもそもオブジェクト指向ってなあに?って言う人にとってはattributeErrorなんだわ
2024/07/17(水) 19:06:26.49ID:VcSrM74t0
粗く括った対象をオブジェクトと呼びたがるのは、
継承の説明をしたいからだけど、
実際には継承しまくって全体が矛盾なく収まるクラス設計なんかできない

継承なんか考えないか、1代継承できたらラッキーくらいでいい
2024/07/17(水) 19:43:33.34ID:yBuA7zY80
データに作法がついてくる構造は使い勝手良いけど
動くことしか興味がなくって
メソッド名や引数のキーワード設計を軽視してると残念なきもちになる
2024/07/17(水) 19:50:28.46ID:VcSrM74t0
データから説明するからメソッドが付属物なんだよな

メソッドが本体
このモジュールはこんなことができます、という売りの部分
その為に満たすべきデータの条件を内部で整えてくれる仕組み
2024/07/18(木) 12:22:18.23ID:2Xm4Ca7G0
>>218
メソッドは振る舞いにしか過ぎない
2024/07/18(木) 13:31:52.27ID:U9nRGPFU0
車とかキーとか、分かんないよな
カジノとかの方が分かりやすいかも

いったんユーザーインスタンスを作ってデフォルトのコインを何枚かもらったら
メソッドであるポーカーとかブラックジャックをやっても
他の大勢ユーザーとコインが混ざることがない、とか
2024/07/18(木) 15:23:46.03ID:OuPynLlO0
自分が読んだ本はRPGのモンスターだったわ
222デフォルトの名無しさん (ワイーワ2 FF42-U8Y+)
垢版 |
2024/07/18(木) 19:09:34.76ID:GUg+Zpj4F
やたらゲームの実装で説明しようとする本があるけど、無駄な情報なんだよあ。

オブジェクト指向設計はゲームのキャラクターなどに適用するのは8ビットコンピューター時代から存在する。

特にC言語の構造体を使えばオブジェクト指向の設計にできたため、オブジェクト指向設計が良いところでオブジェクト指向を用いるのは良いが、そうでないところでオブジェクト指向を適用するのは混乱を招くだけ。
2024/07/18(木) 19:42:26.05ID:vMiWDkdR0
何か単一の作りたいものがあって、OOPが向いてる向いてないというのは無い
OOPでなくても作れるし、OOPのせいで手間が増える

生産性とか保守性とか、巨大すぎて手に負えないとか、
割とマイナスな要因でOOPを取り入れる
組み込み用途はOOPのデメリットが致命的なので、今でも素のC言語で書いている
224デフォルトの名無しさん (ワイーワ2 FF42-U8Y+)
垢版 |
2024/07/18(木) 19:54:43.69ID:GUg+Zpj4F
>>223
それは単にオブジェクト指向設計を全否定しているだけで、オブジェクト指向の話になっていない。
2024/07/19(金) 00:52:01.61ID:Aa0/4EKh0
pycharmいいわ
比較とかある
ファイルを並べて違う箇所がハイライトされたりする
226デフォルトの名無しさん (ワッチョイ 768e-6R/B)
垢版 |
2024/07/19(金) 03:30:53.31ID:GYhwgtKN0
>>225
そんなのよくある機能だろ
他を知らない馬鹿なのでは?
227デフォルトの名無しさん (ワッチョイ 7a50-01F0)
垢版 |
2024/07/19(金) 05:33:45.75ID:+oFdaKCd0
石丸伸二さん取材の最前線

「取材不足」さんのYouTubeチャンネル
https://youtube.com/@shuzaibusoku

「取材不足」さんのX(ツイッター)
https://x.com/shuzaibusoku7

石丸伸二さんは天才ですね!
228デフォルトの名無しさん (ワッチョイ 7a50-01F0)
垢版 |
2024/07/19(金) 05:34:31.98ID:+oFdaKCd0
>>225
比較だけならWinMergeでいいんじゃないのか?
229デフォルトの名無しさん (アウアウエー Sa02-IocT)
垢版 |
2024/07/20(土) 11:11:48.39ID:9R/FGJUia
>>217
C で FILE * を使ったことがある人ならオブジェクト指向の説明がしやすい
だが C++ の iostream お前は糞だ
2024/07/20(土) 12:41:36.45ID:6CTBtgMFa
>>225
いいよね、全てPyCharmの中で完結するし
231デフォルトの名無しさん (ワッチョイ 7a5b-U8Y+)
垢版 |
2024/07/20(土) 17:53:01.97ID:pd3T6vIK0
>>229
関数へのポインタを理解している時点でオブジェクト指向を理解している
232デフォルトの名無しさん (ワッチョイ 7a5b-U8Y+)
垢版 |
2024/07/20(土) 17:54:01.71ID:pd3T6vIK0
統合開発環境から始めさせるのは理解に苦しむ
2024/07/20(土) 18:02:26.59ID:szaKrRmH0
ポインタとかそんな内部事情は知らなくても使えるのがオブジェクトの建前
実際には建前なんか崩壊してて、皮一枚かぶせただけ
234デフォルトの名無しさん (ワッチョイ 7a5b-01F0)
垢版 |
2024/07/20(土) 18:42:25.33ID:pd3T6vIK0
>>233
そんなの誰もがわかるよ。

オブジェクトという概念が後付けだったせいで混乱しているのがPython。

最初に作った人間がC++の問題点に気づかなかったせいで、C++と同じ問題を起こした。

しかもタチが悪いのが、オブジェクトとオブジェクトでないものをすべてオブジェクトと言い出したところ。
2024/07/20(土) 18:48:16.84ID:szaKrRmH0
オブジェクト指向のオブジェクトは雰囲気だから何がオブジェクトかの定義なんか無い
pythonのオブジェクトは定義が厳密
236デフォルトの名無しさん (ワッチョイ 7a5b-01F0)
垢版 |
2024/07/20(土) 18:52:10.07ID:pd3T6vIK0
Pythonのオブジェクトの定義はまだフラフラしている最中
2024/07/20(土) 18:53:52.22ID:rx6imyFG0
>>231
関数ポインタとかは実装の詳細だよ
オブジェクト指向のための各機能が具体的にどう実装されてるかという実装の詳細を理解することととオブジェクト指向そのものを理解するのとは全く別のこと

本当に大事なのは言語やパラダイムに関係ないオブジェクト指向よりも高次の抽象概念を理解してその実現手段としてのオブジェクト指向を理解すること

関数ポインタからは辿り着けない
238デフォルトの名無しさん (ワッチョイ 7a3b-01F0)
垢版 |
2024/07/20(土) 19:04:56.17ID:pd3T6vIK0
関数へのポインタを知らない人間が語っても意味はない。
C/C++は物理アドレスを辿ることを前提とした設計にならないなら採用しない方がいい。

OSを作るために作ったプログラミング言語と、遊びで作ったPythonでは最初の発想が異なる。
2024/07/20(土) 19:16:16.59ID:szaKrRmH0
なんで関数ポインタでそんなに喜べるんだ
2024/07/20(土) 19:32:32.03ID:5OHSUBrx0
せっかく抽象化の仕組み作ってんのに
何かしたらポインタが出てくるという
悲しき言語
241デフォルトの名無しさん (ワッチョイ 7a3b-U8Y+)
垢版 |
2024/07/20(土) 19:37:16.96ID:pd3T6vIK0
>>239
オブジェクト指向設計ができるから
242デフォルトの名無しさん (ワッチョイ 7a3b-U8Y+)
垢版 |
2024/07/20(土) 19:38:32.16ID:pd3T6vIK0
>>239
変数と関数へのポインタを含む構造体をC言語で作ると関数をメソッドのように呼び出せる
2024/07/20(土) 19:47:49.59ID:szaKrRmH0
Bボタン押してると速く走れるくらい基本技だよ
244デフォルトの名無しさん (アウアウエー Sa02-hIhh)
垢版 |
2024/07/20(土) 19:50:01.72ID:JfCCJ2oka
C++にはvtableという隠しメンバがおるんやで
245デフォルトの名無しさん (ワッチョイ 7a3b-U8Y+)
垢版 |
2024/07/20(土) 20:09:41.06ID:pd3T6vIK0
>>243
それハードウェアの割り込みだから別物
2024/07/20(土) 22:16:10.12ID:HiyJxQDg0
>>243
たとえが古すぎる
だが100%同意する
247デフォルトの名無しさん (ワッチョイ 5312-aLFS)
垢版 |
2024/07/22(月) 21:07:44.56ID:SbBOLwbq0
言葉が古すぎる
2024/07/22(月) 21:17:26.98ID:eB6Mh8rN0
関数をメソッドのようにってメソッドは関数ちゃうんか?
2024/07/22(月) 21:52:20.09ID:KKI1xebv0
関数に入れられるのは数値やデータだから
モノを扱うなら関数ではなくメソッド
2024/07/22(月) 21:56:20.98ID:IoUmr5an0
自由関数をメンバ関数のように、って言いたいんだろうな
2024/07/22(月) 22:19:25.73ID:kAQiF9kn0
>>248
クラスやメソッドがないC言語で`foo.bar()`とか`foo->bar()`のように
構造体のインスタンスをレシーバーっぽく使って関数を呼び出す話だと思うよ

マジでBダッシュレベルの基本技だけど
C言語使わなければ知らなくても何の問題もない
メソッドもファーストクラス関数もない言語とかもうC言語以外に触れる機会無いから
2024/07/23(火) 06:59:40.67ID:tXXTtv/k0
>>249-251
そういうことか
C言語にはメソッドが無かったからなのね
2024/07/23(火) 07:10:17.60ID:4XhDIIO5M
XView はC言語用のAPIだけどメソッドはあったぞw
254デフォルトの名無しさん (ワッチョイ 5312-FUF1)
垢版 |
2024/07/23(火) 17:33:28.33ID:TPPfHQM20
C言語の話なのにC++の話だと思う人間がいるように、C++は失敗しているプログラミング言語。

オブジェクト指向でないのにPythonはオブジェクトという用語を取り入れたせいで、初心者もそうでない人間も気持ち悪いものになっている。
2024/07/23(火) 18:06:09.22ID:xnSNk6y30
いやオブジェクト指向だよ
別にそうでない書き方もできるだけ
2024/07/23(火) 20:26:56.80ID:O28HvEHi0
perlは元々は全然オブジェクト指向じゃなかったのに、
bless追加するだけでオブジェクト指向化した

あの手法は見事だし、オブジェクト指向なんて所詮はその程度のもの
C++は言語仕様すら変えずにプリプロセッサでやっていて、
努力は認めるけどろくなもんじゃない
257デフォルトの名無しさん (ワッチョイ 4967-MarV)
垢版 |
2024/07/23(火) 21:24:32.99ID:8wiIiKG40
C言語だってマクロで頑張ってオブジェクト指向プログラミングしてたりするライブラリもあるしね。GTKとかね。読めるまでがつらすぎるけど。
258デフォルトの名無しさん (ワッチョイ 53be-c9uF)
垢版 |
2024/07/24(水) 19:28:21.05ID:mAHVpeHr0
Django得意なやつおらん?
259デフォルトの名無しさん (ワッチョイ 53be-c9uF)
垢版 |
2024/07/24(水) 19:29:04.05ID:mAHVpeHr0
主テーブルが外部キーないんやが内部結合の方法しりたいんよ
2024/07/24(水) 19:54:12.53ID:aZhJNMHQ0
生成AIに聞けば?
261デフォルトの名無しさん (ワッチョイ 53be-c9uF)
垢版 |
2024/07/24(水) 20:29:39.34ID:mAHVpeHr0
なんでもAIに頼るな!
2024/07/24(水) 20:44:00.92ID:dGeLPp8h0
AIは地球を救うのか?
2024/07/24(水) 22:13:22.89ID:BHlXpcoL0
>>259
DBMS側で外部キーが設定されてなくても
モデル側で外部キー設定してれば普通に結合できない?
264デフォルトの名無しさん (ワッチョイ 5168-h7bd)
垢版 |
2024/07/25(木) 08:44:18.73ID:KP2cFN040
地球を救うのではなく地球に巣くうんだよ
265デフォルトの名無しさん (アウアウエー Sae3-hEcB)
垢版 |
2024/07/25(木) 16:19:53.06ID:EE/eILqDa
卓球のAIちゃんは今何してるのかしら
266デフォルトの名無しさん (アウアウエー Sae3-hEcB)
垢版 |
2024/07/25(木) 16:20:33.95ID:EE/eILqDa
>>258
pythonスレかDjangoスレで
267デフォルトの名無しさん (ブーイモ MMb5-0U8O)
垢版 |
2024/07/25(木) 17:56:40.20ID:d36Rq1nwM
>>259
「主テーブル」という用語はリレーションデータベース用語ではない。
2024/07/25(木) 18:57:39.87ID:WPUIh9u4M
>>267
「リレーションデータベース」という用語はリレーショナルデータベース用語ではない。
2024/07/25(木) 19:08:17.92ID:6w1rxeNv0
エモーショナルデータベース
2024/07/25(木) 21:26:05.65ID:AkRaRHXq0
外部キーの有無なんて結合には関係ないだろ
271デフォルトの名無しさん (ワッチョイ 5367-0U8O)
垢版 |
2024/07/25(木) 23:14:59.95ID:RikENVvZ0
「主テーブル」という用語を使うSIerがあるが、これはCOBOL用語なのかな?
272デフォルトの名無しさん (ワッチョイ 5367-0U8O)
垢版 |
2024/07/25(木) 23:17:47.16ID:RikENVvZ0
FROM句の最初に書くテーブル名を言っているのはわかっても、意味があるのか疑問に思っている。

処理方法を指示している言い方がひっかかる。
2024/07/25(木) 23:47:46.17ID:AkRaRHXq0
駆動表のことかな
274デフォルトの名無しさん (ワッチョイ 5367-0U8O)
垢版 |
2024/07/26(金) 00:52:40.61ID:JylNHC7t0
>>273
その駆動表の説明をすると日本人には逆じゃないのかという用語になるので使えない。

ネステッドループだと外側になるから、外部表と呼ばれるが、駆動表を外部表と言ってわかる人間はほとんどいない。

図示がどれだけ重要なのか認識してほしいよな。
275デフォルトの名無しさん (ワッチョイ 5367-0U8O)
垢版 |
2024/07/26(金) 00:53:16.62ID:JylNHC7t0
ドキュメンテーションがいかに重要かわからないと戦力にならない。
2024/07/26(金) 07:59:40.23ID:74eajxja0
わかりにくいのは駆動表じゃなくて外部表内部表の方なんじゃないかな
2024/07/26(金) 10:10:40.76ID:RKHjG1e00
スレチなのでスレ立てるまでもない質問スレに行ってくれないか
2024/07/26(金) 10:29:45.96ID:wRuEZapv0
適用業務アプリーケーションとかな
2024/07/26(金) 11:35:08.08ID:Tac5kJOn0
鍵盤!
2024/07/27(土) 00:41:14.80ID:fo+WsYuB0
range(7)で0から6ってのがどうしても納得できない
2024/07/27(土) 00:53:11.08ID:gqmjLcpv0
range(0,7)は納得できる?
2024/07/27(土) 03:00:27.09ID:LWZ3F2id0
range(0)についてかんがえてみて
2024/07/27(土) 06:38:23.86ID:utWAOMso0
for (i = 0; i < 7; i++)
から0と7を抜き出しただけなんだよな
初期値と終了条件を与える
初期値が0の場合は省略可能で、終了条件は個数と同じになる
2024/07/27(土) 17:57:23.49ID:ri81ZY/A0
0も数字だからです
2024/07/27(土) 22:46:05.92ID:fo+WsYuB0
>>281
いや単にそう決めただけならいいんだが
すげーバカが設計したなあって思うよ
2024/07/27(土) 23:14:25.46ID:LWZ3F2id0
具体的には?
0 <= n < N なのは合理的だし問題ないけど
それが range(N) なのはドキュメンテーション悪いってならわかる
2024/07/28(日) 00:22:53.60ID:DlUEjl6T0
>>281
直前まで返すって覚えれば、
そう言うもんかー、てなる
2024/07/28(日) 08:19:00.94ID:YeQTV+6P0
0も数字だからです
2024/07/28(日) 16:04:26.52ID:8+9X2FyV0
>>286
根拠ゼロw
perl のリストリテラルでいいだろwガイジw
map(0..6)
2024/07/28(日) 16:17:45.56ID:PfNOVc/80
そう書きたくなるのは理解できるけど筋が悪いんだよな
(0 .. $num-1)
という書き方は気持ち悪いだろ
2024/07/28(日) 16:33:24.45ID:qukqof110
pythonが嫌なら使わなきゃいいのに
馬鹿にしながら依存してるとか
そっちの方がよっぽど重症だわ
2024/07/28(日) 16:42:25.73ID:FpEcEwXL0
ほんとそれな
他の言語で違う書き方のものはいくらでもある
2024/07/28(日) 16:46:36.09ID:D6cM4xic0
デフォルトがそうなってるのは0オリジンで配列アクセスのために使うからって理由がわからないなら
単にセンスがない
2024/07/28(日) 16:51:30.23ID:3fX6aheH0
>>290
それはどっちもどっちでしょ
range(start, end+1)と書く必要がある場合もあるわけなんだから

range(start, stop[, step])にrange(stop)も持たせたのは
別の関数を用意すると名前空間を汚染するからだと思うよ
ビルトイン関数を多用するPythonの弱点ではあるけどね

いいAPI設計ではないけど半日もすれば慣れるし
in演算子のように明らかなデメリットがあるわけでもないから気にならない
2024/07/28(日) 16:57:26.50ID:3fX6aheH0
>>293
配列アクセスはrangeじゃなくてsliceを使って下さいね
センスがあるなら
2024/07/28(日) 17:04:41.44ID:PfNOVc/80
range(start, end+1)
と書いた時点で筋が悪い
最後の要素のindexなんかをわざわざ持つような書き方はバグの元
2024/07/28(日) 17:13:34.21ID:FpEcEwXL0
>>295
スライスも範囲は同じだろ
何言ってんだ?
2024/07/28(日) 17:15:44.24ID:D6cM4xic0
0オリジンが嫌ならFortranでも使ってなさい
2024/07/28(日) 17:19:22.01ID:FpEcEwXL0
Rubyでいいんじゃない?
..や...演算子があるよ
2024/07/28(日) 17:38:40.75ID:PfNOVc/80
startとendを両方使う、というのがそもそもアウト
0から始めるのと、endを使わないのはセット
end=numにしたいなら、1から始めるべき
2024/07/28(日) 17:52:59.56ID:YeQTV+6P0
いつまで無駄な事に拘ってるのか
結論は「仕様です」で終わる話やろ
2024/07/28(日) 17:56:18.45ID:FpEcEwXL0
SwiftにはA..<BとA...Bがあるぞ
これが個人的には1番わかりやすい
2024/07/28(日) 18:02:26.09ID:PfNOVc/80
Swiftみたいに両方用意するのも手だな
その上で..<しか使わないのが読みやすくバグらない
range(5, 10)とだけ書かれても慣れてる人しか意味が判らない
2024/07/28(日) 18:26:18.00ID:3fX6aheH0
>>296
ユースケース次第だよ
Pythonの標準ライブラリでもrange(start, end+1)やrange(end+1)のパターンはたくさん使われてるよ
2024/07/28(日) 18:29:47.19ID:PfNOVc/80
内部で閉じてるのにそんな書き方してたら下手なだけ

内部的には0から始まるけど、人間が扱うIDが1から始まってる
みたいなことは普通にあるので、それに合わせる為なら仕方ない
2024/07/28(日) 18:41:53.09ID:3fX6aheH0
>>305
>内部的には0から始まるけど、人間が扱うIDが1から始まってる
>みたいなことは普通にあるので、それに合わせる為なら仕方ない
それはrangeでend + 1するのとは違う話
2024/07/28(日) 19:16:49.11ID:PfNOVc/80
違う話だと思ってる人が多いから未だにrangeが2種類要るんだよな
配列のindexやidは0から始めた方が合理的、という考えは割と広まってるのに

num = 5
0 1 2 3 4 : 0からnum-1まで
1 2 3 4 5 : 1からnumまで
0から始めるかどうかと終了条件をどうするかは表裏一体
2024/07/28(日) 19:20:49.38ID:PfNOVc/80
関係ないけど、妊娠の日数の数え方は0週0日から開始するんだよな
そして1ヶ月は4週
そこだけフランス革命しとる
合理的すぎて大抵の妊婦は混乱してると思う
2024/07/28(日) 19:39:26.26ID:2kXxryni0
思考がコンピュータ寄りで素で0から6のindex列挙と発想するから
7回の操作と表現したい気持ちが理解できないんだろうか
2024/07/28(日) 20:02:46.28ID:PfNOVc/80
numだけでいいなら
for _ in range(num):
2024/07/28(日) 23:11:21.49ID:3fX6aheH0
0始まりか1始まりかに関係なく
妥当な範囲内にある上限値(end)を指定できることが
対象ドメインにおいて重要かどうか より自然かどうか

例えばipaddressモジュールにはrange(network, broadcast + 1)とあるけど
これはbroadcast addressを使ってrangeを定義できることに意味があるから
範囲外にある次のアドレス192.0.2.4を指定するのは不自然だから

192.0.2.0/30をイテレートすれば上のrangeが使われて
192.0.2.0(network)から192.0.2.3(broadcast)までが列挙される
ここでは0始まりか1始まりかは関係ない
2024/07/28(日) 23:20:07.46ID:3fX6aheH0
もっと簡単な例で言えば
’n’..’z’のようにアルファベットの任意の範囲を表現したい場合に
‘z’という妥当な範囲内にある上限値を直接指定できないと困るよね?
こういう場合にrange(start, end + 1)やslice(start, end+1)のパターンが出てくる
2024/07/28(日) 23:29:56.40ID:PfNOVc/80
それは恐らく、rangeを使うべきでない部分にrangeを使っちゃったのが原因
314デフォルトの名無しさん (ワッチョイ d62a-+h6N)
垢版 |
2024/07/29(月) 06:36:23.28ID:ev2lCRhV0
>>313
rangeという「言葉」を使うべきでない機能にrangeと命名しちゃったのが原因、だろ。
2024/07/29(月) 17:15:11.39ID:ekJQWRMJ0
0range
316デフォルトの名無しさん (ワッチョイ ce90-yNUa)
垢版 |
2024/07/29(月) 18:56:15.68ID:IM7EvJYP0
ミジンコのお前らが言ったところで言語仕様が変わるとでも思っているのか?
2024/07/30(火) 21:40:53.03ID:fyIsDC5M0
>>290
-1が出てくるお前の頭がバカなだけだろw
2024/07/30(火) 21:42:25.97ID:fyIsDC5M0
>>309
いやそことは関係ない
やっぱニワカやな
2024/07/30(火) 22:52:41.09ID:1KdlwQ+P0
>>314
rangeという言葉に代わる適切な名前があればよかったんだろうけどね。
かといってrangeという名前に動作を合わせるのはアホだし。
2024/07/30(火) 22:56:01.49ID:BmVgT2kF0
適当にdictionary作ればよくね
2024/07/30(火) 22:57:25.73ID:5JKGZuks0
少なくとも、数列に対しては+1とかの小細工は不要
数列でない例を出してきたら無理かもしれないけど、
そもそも加算不可能ならリストとか集合で扱うべき

加算可能でかつ数列でない例となるとかなりレアで反論として苦しすぎる
2024/07/30(火) 23:25:03.88ID:fyIsDC5M0
range型っていう概念がすでに邪魔だなあって
昔のメインフレームみたいに無駄なアクセスメソッドが増える
2024/07/30(火) 23:31:08.40ID:5JKGZuks0
イテレータが要求されるところに使えるシリーズの一つに過ぎない
rangeだけ嫌わんでも
listとして使いたい時にlist変換すればいい
324デフォルトの名無しさん (ワッチョイ 1a98-6Pme)
垢版 |
2024/07/30(火) 23:35:13.83ID:IMwqHlbY0
Pythonはコレクションの名前がわかりにくい
325デフォルトの名無しさん (ワッチョイ a5d8-8z5E)
垢版 |
2024/07/31(水) 00:15:40.33ID:Crs54f8j0
名前だと個人的にはABCに突っ込みたい
Abstract Base Class の頭文字だと言われればそうだけど、普通に読んだらアルファベットの先頭3文字にしか見えないし、どのような機能を提供するモジュールかが分かりづらい
326デフォルトの名無しさん (ワッチョイ 1a98-6Pme)
垢版 |
2024/07/31(水) 01:55:45.66ID:Qef+C1SH0
>>325
まあ、ふざけてそういう名前にしているんだよなあ。
2024/07/31(水) 07:48:14.96ID:fliUAr5E0
BeautifulSoupも意味判らん
2024/07/31(水) 08:10:58.35ID:8vm8X3ZV0
>>327
タグスープっていう用語が元ネタ
2024/07/31(水) 11:56:33.80ID:6VA4UCN/0
beautifulな
すーぅぷをぉ
あーげるーうー
2024/07/31(水) 12:28:50.45ID:ZAfvnnO40
>>326
モンティパイソン自体センスがないと言うしかないな
2024/07/31(水) 16:05:19.43ID:ZF1eb4h10
ふしぎの国のアリスじゃないの

https://www.jpnnavi.com/ja/study/book1_10.html
2024/07/31(水) 17:14:24.64ID:fliUAr5E0
なるほど
間違ったhtmlに対する揶揄なのか
その割に、間違っててもちゃんと読める訳でもない
今どきのはみんな自動生成だから、複雑なだけで間違ってはいない
2024/08/01(木) 09:11:21.61ID:K90xi8hX0
>>331
そもそも言語の名前からしてと言う意味だが
2024/08/01(木) 19:26:34.93ID:qf1CYWvK0
ウミガメのスープの話が元々ある
本物のウミガメのスープを一口食べて自殺する奴
本物じゃない方は、偽ウミガメのスープ
偽[ウミガメのスープ] という言葉を、[偽ウミガメ]のスープ と読み替えて、
偽ウミガメというキャラを登場させるのが面白い部分
2024/08/02(金) 20:38:42.76ID:19u61RTe0
おっすオラプログラミング初心者でPython勉強中!!
エディタはVScodeを使ってるんだけど、Pythonやるならこの拡張いれておけ!ってやつある?
とりまこれだけ入れてる。

・Japanese Language Pack for Visual Studio Code
・Python
・Pylance
・auto Docstring Python
・black formatter
・Flake8
・Error Lens
・IntelliCode
・indent-rainbow
336デフォルトの名無しさん (ワッチョイ 8d94-kReu)
垢版 |
2024/08/02(金) 20:48:05.46ID:KHQ7snP00
パイソンでポイントサイトの毎日ログインやらしたいんだけどどうしたらいい?
2024/08/02(金) 20:49:12.22ID:UamBNfSi0
不正のやり方は人に聞くものじゃない
2024/08/02(金) 22:17:32.40ID:LkwmfO+a0
>>335
また環境構築やってる
2024/08/02(金) 22:25:18.87ID:Wy4Cl7NP0
>>336
s*ei*nir
2024/08/02(金) 23:24:25.91ID:H4ME9sKD0
range(1,7)の動きとかな
データの個数だ!0から数えるのが当たり前だ!
とかいう言い訳は通用しないw
2024/08/02(金) 23:28:26.64ID:qIJJIjRw0
1と7を両方書いちゃうと負け
range(1, 1+num)
が正解
2024/08/02(金) 23:30:13.24ID:qIJJIjRw0
7月分のデータを集計しようとして、
7/1から7/31までを指定したら負け
7/1から8/1の前まで、が正解
2024/08/02(金) 23:33:35.55ID:H4ME9sKD0
油断すると負けてしまう
2024/08/02(金) 23:38:37.16ID:qIJJIjRw0
メモリマップとかで、
0000
なんとか領域
0fff
1000
みたいに書いてあるのは存在自体が負け
先頭と末尾を両方書いてたらまず負けてる
2024/08/03(土) 07:07:54.34ID:q/25yG1G0
締め切りは8/3の23時59分です
とかも、0秒? 59秒? msecは? と無限にツッコミどころが湧いてくる

最初の条件成立から、条件成立しなくなるまで
という「半開区間」が正義
2024/08/03(土) 16:36:13.18ID:8ODDC/y50
初心者の学習としてJupyter Notebookって必要??
覚えてた方がええんか?
2024/08/03(土) 18:57:48.50ID:QkdwgqIr0
必要かと聞かれたらいいえ
ただ素の状態だとコンソール出力かファイル加工がやっとだから
簡単にグラフや画像出力、デバッグもできるJupyterのがストレス少ない
2024/08/03(土) 19:56:20.21ID:UOf7wP980
ええ
2024/08/03(土) 20:25:15.56ID:sC3b/dtf0
jupterって勉強するもん?
2024/08/03(土) 20:39:36.46ID:q/25yG1G0
jupyterだとpandasの出力がテキストでなくて表になるのは、
pandasがよく出来てるのかjupyterが賢いのかどっち?
2024/08/03(土) 21:24:11.44ID:8ODDC/y50
>>347
なるほど?
グラフの出力とかはジュピターの方が楽なのね
2024/08/04(日) 17:38:20.78ID:65IaeFum0
グラフの出力自体は素のPythonでも変わらん
しかしグラフというのは一度出したら終わりではなく、一般には望ましい結果が得られるまでデータを加工したり設定を変えたりして試行錯誤するものだ
Jupyterを使うことで、そういった試行錯誤を効率的に行うことができる
逆に言うと、既に試行錯誤の段階が完了していて、データだけを変えて繰り返しグラフ出力を実行するような場合は、Jupyterを使うより素のPythonを使ったほうが効率的かもしれない
まあ現実には最初Jupyterで作ったらそのままJupyterで画像ファイルに出力させることが多いけどね
2024/08/04(日) 17:39:08.92ID:1hDKZBW40
ごちゃごちゃ言ってないでさっさと書けやw
2024/08/04(日) 17:46:12.24ID:b8kSAT/10
>>352
とりあえずVScodeにJupyterの拡張入れてみたわ

便利やな
一つのファイル内で別のプログラムを試すときに視覚的にわかりやすいから、参考書みて試しながらやるならこっちのほうがええな
2024/08/04(日) 17:46:19.65ID:GeMr6Szw0
jupyterの出力は簡易的なものだろ
ちゃんとしたグラフはMatplotlibで作る
あるいは最初からRを使う
356デフォルトの名無しさん (ワッチョイ eb8e-AHtZ)
垢版 |
2024/08/04(日) 18:39:45.11ID:MUsI65Xv0
>>355
馬鹿はコメントするなよ
2024/08/04(日) 18:58:23.72ID:riZP8C210
初心者止まりでいいなら寧ろjupyterでやった方がいいくらい、嫌味でなく
2024/08/04(日) 19:07:06.24ID:GeMr6Szw0
簡単にグラフ作るならexcelがいい
たまにexcelのグラフで本出してる人もいるくらい
359デフォルトの名無しさん (ワッチョイ eb8e-AHtZ)
垢版 |
2024/08/04(日) 19:54:21.84ID:MUsI65Xv0
>>358
だから、馬鹿はコメントするなよ
2024/08/04(日) 20:16:40.90ID:b8kSAT/10
ワイはいずれはスクレイピングとかして機械学習とか使って株価予想ソフトを作りたい
まずはJupyterで変数とか基礎文法を学ぶで!
2024/08/04(日) 20:33:50.44ID:TJUdSfKf0
ミュータブルはなんのメリットがあるんだろ
デフォルトがdeepcopyで
やりたいときだけリファレンスデリファレンスすればいいとか思うんだが
2024/08/04(日) 20:46:27.29ID:B5K23Knn0
py.トーチは結構簡単
2024/08/04(日) 20:48:42.72ID:65IaeFum0
Jupyter以外だとStreamlitも凄いよね
QtとかでシコシコGUI作ってる中級者を尻目に美麗でインタラクティブなクールなアプリをクソ簡単に作ることができる
2024/08/04(日) 21:30:49.60ID:b8kSAT/10
Pythonって変数の型を定義しないでいいの楽ちんだな
365デフォルトの名無しさん (ワッチョイ 0132-xNjE)
垢版 |
2024/08/05(月) 14:04:53.48ID:BduEjBaz0
>>355
マジレスするとmatplotlibなどの結果をjupyterだとすぐにブラウザでインラインで確認できるってことな
画像を保存するのと本質的に何の違いもないよ
Rとかなんのこっちゃ。グラフを描くだけのためにRを使うことはない。元々Rにしかないパッケージが必要でRで処理しているならともかく、的外れすぎる
>>358
Excelのグラフが簡単なのはかなり限られたユースケースだと思うけどな。
ヒストグラムもめんどくさいし、複数のグラフを同じ体裁でとかも簡単じゃないし。
あくまでテンプレートにある形で全自動でデータ領域選んだら出てくればいいときだけぐらいじゃね?
そして手間は全自動matplotlibも大差ないし
366デフォルトの名無しさん (ワッチョイ 5360-CchU)
垢版 |
2024/08/05(月) 14:59:08.85ID:UvaKmykX0
そもそも仕事ではブラフを作ることはそんなにない
367デフォルトの名無しさん (ワッチョイ 5165-xNjE)
垢版 |
2024/08/05(月) 15:50:58.57ID:G00WydoT0
>>366
そんなんめっちゃ仕事によるから
webアプリとかwebシステムとかにしか使われない言語ってわけでもないし
確かに専業プログラマ時代はグラフなんかほとんど作らなかったけど
2024/08/05(月) 16:44:17.26ID:dN8R1ALp0
グラフじゃなくてブラフの話だぞ
2024/08/05(月) 16:52:27.14ID:DFvgfJhZ0
ブラフw
370デフォルトの名無しさん (ワッチョイ b3ee-eg/E)
垢版 |
2024/08/05(月) 19:31:45.20ID:8ZGl3ILU0
なあ、初心者質問で申し訳ないがPythonって処理速度遅いらしいやん?
そんなに他と体感的に感じるもんなん?
371デフォルトの名無しさん (ワイーワ2 FFa3-2913)
垢版 |
2024/08/05(月) 19:42:50.14ID:EUzl0HTCF
>>370
速いとか遅いとか言っている人間とは縁を切れ
372デフォルトの名無しさん (ワイーワ2 FFa3-2913)
垢版 |
2024/08/05(月) 19:43:32.98ID:EUzl0HTCF
>>370
実際に時間がかかるものを作って比較するしかない
373デフォルトの名無しさん (ワッチョイ 992a-DL1l)
垢版 |
2024/08/05(月) 19:53:32.99ID:myHOasGP0
>>370
> 他

が何かによるんじゃないか。
2024/08/05(月) 19:58:12.02ID:DFvgfJhZ0
>>370
確実に言えるのは初心者が気にすることではない
375デフォルトの名無しさん (ワッチョイ b3ee-eg/E)
垢版 |
2024/08/05(月) 20:21:32.67ID:8ZGl3ILU0
>>371-374
なんだ、そんなに体感するほどでないんだ
ネトゲのフレンドにPython勉強してるっていったら「あーPythonは簡単だけど処理速度が遅いからね」って言ってたから不安になった
2024/08/05(月) 20:31:36.33ID:Yc9kthAg0
0.01秒で終わっても1秒で終わっても人間からすれば同じだしな
他でなら1時間で済むものが100時間かかるなら考える
2024/08/05(月) 20:41:24.61ID:GxQBFufM0
単純にやると100倍遅くていろいろ工夫しても数倍遅いことはある
378デフォルトの名無しさん (ワッチョイ b3ee-eg/E)
垢版 |
2024/08/05(月) 20:53:20.49ID:8ZGl3ILU0
>>376
それ結構ちがくね????
2024/08/05(月) 21:03:47.56ID:MKJ09w0E0
>>375
処理速度を気にするような処理はPythonには不向きってことではある
2024/08/05(月) 21:13:21.36ID:ESlcV2eK0
pipでパッケージいろいろ使えるし
手軽でいいぞpythonは
381デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/05(月) 21:13:41.24ID:UvaKmykX0
>>375
そんなド素人の話なんか無視してくれ
382デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/05(月) 21:14:56.84ID:UvaKmykX0
>>379
オンボロPC上で動かすのか?
383デフォルトの名無しさん (ワッチョイ 012a-xNjE)
垢版 |
2024/08/05(月) 22:59:18.56ID:BduEjBaz0
Pythonで書いたコードでも処理速度を速くする方法はあるというのがひとつと、
Pythonで書くことによって簡単に書ける代わりに処理速度が犠牲になることが問題なのか考えるべきというのがもう一つある
処理時間よりコードが完成するまでの速さが大事な場合もあるからね

実際に本格的にプログラムを書くようになったら、楽さと速さとかその他の特性に合わせて適切な言語を選んで書くようになるので、
初めての言語なら気にしなくてよいと思う
2024/08/05(月) 23:06:08.80ID:Yc9kthAg0
困った時に考えればいいんだよ
385デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/05(月) 23:14:29.13ID:UvaKmykX0
Pythonそのものの話じゃねえだろw
386デフォルトの名無しさん (ワッチョイ a972-ImVy)
垢版 |
2024/08/05(月) 23:47:18.26ID:SkPCtOW00
Pythonは「コンパイルを必要とする他の言語に比べると遅い」は事実だけど、用途によってはそれでも十分という感じ
例えばちょっとした事務作業を簡略化するために「ファイルを読み取り、テキストの内容を適宜加工して出力する」くらいならPythonでも十分
それくらいなら0.1秒未満で終わるのが殆どだろうし、Pythonが遅いと体感することも無いと思う

それが数百、数千ファイルを処理したいとなると、いくらか「待たされる」感じにはなると思う
コンパイルされた言語での実装との差も感じられるはず
この待ち時間が十分許容できるなら問題はない

パフォーマンスが重要な分野はPythonは向かない
ゲームエンジンを1から作りたいという場面でPythonはありえないし、それで作ったゲームはとても重くなるはず

ただし、世の中には「他の言語で作られたPythonライブラリ」も多くあって、それを使う分には問題ない
例えば機械学習で使われるPyTorchはC++で書かれていて、それをPythonから扱えるようライブラリを提供している
だからPyTorchを使う分にはC++と同等の速度が出るけど、これもゲームエンジンと同じで、中身の部分はPythonで作れるようなものではない
2024/08/05(月) 23:58:29.54ID:DFvgfJhZ0
中身のない長文はいいよ
388デフォルトの名無しさん (ワッチョイ a972-ImVy)
垢版 |
2024/08/06(火) 00:10:59.10ID:LI/CYdvn0
初心者質問と書いてるんだから少しくらい丁寧に答えても良いと思うが
普段からプログラムを書くような人にとっては常識だけど、そもそもそういう人に向けたレスではないし
389デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/06(火) 02:00:07.09ID:mZs5SC9y0
>>386
あんた素人すぎよ
390デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/06(火) 02:01:28.55ID:mZs5SC9y0
>>386
ファイル操作なんてプログラミング言語のせいじゃない。
391デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/06(火) 02:03:20.81ID:mZs5SC9y0
プログラム板はレベルが低いからなw
2024/08/06(火) 07:52:57.79ID:3SzxwaA/0
IOで遅くなってるのは何で書いても遅い
393デフォルトの名無しさん (ワッチョイ 992a-DL1l)
垢版 |
2024/08/06(火) 08:03:04.64ID:bIwg8fIw0
IOに限らないのだろ。>>386 は「ファイルを読み取り、テキストの内容を適宜加工して出力する」と 言ったので。
394デフォルトの名無しさん (アウアウエー Sa23-LX2u)
垢版 |
2024/08/06(火) 10:24:07.35ID:SBxTyrdXa
イキったネットのフレンドωωω
2024/08/06(火) 10:35:02.43ID:Q+vWyqeI0
Pythonはインタプリタの起動時間があるのでHello World出力するのでも0.1秒くらいは最低でもかかる
「ファイルを読み取り、テキストの内容を適宜加工して出力する」処理をほとんどの場合で0.1秒未満で終わらせるというのは無理

常駐プログラムにして起動時間を除いて考えるならファイルの内容や処理内容によっては可能かもしれない
ただ起動時間の遅さというのは常に付きまとうので5〜10秒くらいは別に待っても構わないという処理でなければ違う選択肢を考えたほうがいいことが多い
396デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/06(火) 12:19:06.97ID:mZs5SC9y0
>>395
2024/08/06(火) 12:23:27.81ID:kLkVzzoo0
>>395
398デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/06(火) 12:44:03.72ID:mZs5SC9y0
>>395
それはほとんどOSとハードウェアの速度の話だぞ?
2024/08/06(火) 13:21:11.66ID:PkPYDp6C0
「pythonは遅い」
でよくね?
400デフォルトの名無しさん (ワッチョイ 5317-2913)
垢版 |
2024/08/06(火) 13:21:48.35ID:mZs5SC9y0
2024/08/06(火) 13:33:03.34ID:geBAoTM5M
2024/08/06(火) 13:41:58.05ID:kLkVzzoo0
403デフォルトの名無しさん (ワッチョイ 992a-DL1l)
垢版 |
2024/08/06(火) 18:27:06.81ID:bIwg8fIw0
>>398
> ほとんどOSとハードウェアの速度の話

でもいいんだ。
その条件を同一にした上での「他と体感的に感じるもんなん?」なのだろうから。
404デフォルトの名無しさん (ワッチョイ 01c5-xNjE)
垢版 |
2024/08/06(火) 19:56:45.64ID:ZohNGK+y0
プログラムの起動時間なんて工夫がかなりしやすい部分だし、そういう部分まで持ち出してきて遅いから別のものを検討した方がいいとかいうのはFUDに近いものを感じるな。
そんなに起動時間気になるならカーネルモジュールでも書けばって気になる。
全体的に遅いのは覆せないとは思うけど、生産性の高さもまた覆せない特性で、無視できないことが多い部分だからね
405デフォルトの名無しさん (ワッチョイ a90d-ImVy)
垢版 |
2024/08/06(火) 21:08:40.59ID:LI/CYdvn0
>>399
Pythonは遅い
けれど仮に100倍遅くても問題ない分野は多いし、その範囲であればPythonの使いやすさというメリットが上回る
というのが妥当な評価だと思う
2024/08/06(火) 22:00:38.56ID:1qiJX+nhd
perlは部分的に異常に速い部分あるよな
正規表現とか
pythonはそういうのないな
2024/08/06(火) 22:18:08.13ID:4zx8wgR80
そのへんが実感できるのは、事あるごとに時間測定してた人だけだろうな
perlで全ファイル読み込んで検索するより、
外部コマンドでgrepする方がよっぽど速くて悲しかった
408デフォルトの名無しさん (ワッチョイ e190-zaQw)
垢版 |
2024/08/06(火) 23:24:30.52ID:gek/gjz60
アイアン‼マーイク。。。パイソン‼
2024/08/07(水) 00:03:12.33ID:/ODS7LdN0
>>407
事あるごとに時間測定なんてせんでも
ごく基本的なコスト意識で明白なケースだから題材が不適
2024/08/07(水) 00:06:07.93ID:DPBAMoq/0
>>407
なんでその条件でPerlの方が速いって思えるんだよ…
2024/08/07(水) 00:23:06.97ID:RY0/qnO20
何1000回とgrepしたらキャッシュがあるとはいえ毎回ファイル読み込みが発生する
そんなことするよりオンメモリで検索した方が速い
perlはその有利さを台無しにするくらい遅かった
2024/08/07(水) 01:01:23.97ID:DPBAMoq/0
オンメモリってgrepもオンメモリでしょ…
413デフォルトの名無しさん (ワッチョイ 912a-DL1l)
垢版 |
2024/08/07(水) 09:19:05.25ID:Bn6kME9z0
結局、
「Pythonは簡単だけど処理速度が遅い」(質問者のネトゲのフレンド曰く)を、誰もが表現を替えて言うだけだな。

どの言語に対して処理速度が優位(或いは不利が少ない)であると >>370 は嬉しいのかを、俺としては知りたかった。
2024/08/07(水) 12:20:22.69ID:88ilwDOU0
おまえらの話が高次元すぎてよくわからないが、スクレイピングやSQL操作やそれを元に計算する程度ならそこまでの体感差はなさそうってことやな?
このままPython学習頑張るぜ!!!
2024/08/07(水) 14:07:09.52ID:DPBAMoq/0
>>414
そういうことだ
頑張れ
2024/08/07(水) 14:25:32.05ID:7va/UotI0
pythonで目的を実現出来ていない人が、
速度を求めてより低級言語で実現できるとは思えないが。
2024/08/07(水) 14:54:42.48ID:DFF0Pa6G0
ハードウェアに近いものを作るとか、速度が何に増しても重要だとか、そういうものでなければ、Pythonが第一候補になる
Pythonほどライブラリが充実してるものはないから
2024/08/07(水) 16:41:18.97ID:WVujG61+0
次の目標は、pythonのコードを多言語対応(英語と日本語)させて、Microsoft Storeで売るぞ
現在は他所で日本のみの販売、売上が5、6、7月と綺麗に7,000円ずつになってる(1本500円で販売)
419デフォルトの名無しさん (アウアウエー Sa23-LX2u)
垢版 |
2024/08/07(水) 17:11:17.36ID:RPpAsXPKa
>>406
numpy
420デフォルトの名無しさん (アウアウエー Sa23-LX2u)
垢版 |
2024/08/07(水) 17:12:50.73ID:RPpAsXPKa
>>416
ほんそれ
2024/08/07(水) 19:15:35.06ID:lbc2IjWY0
GUIもpythonでやり出して他の言語触ることが少なくなってきた
2024/08/07(水) 19:22:06.08ID:nJZBaZTg0
どういう用途にGUIを使うの?
2024/08/07(水) 19:23:15.39ID:aXIC41FY0
なんぴー
424デフォルトの名無しさん (ブーイモ MMcd-2913)
垢版 |
2024/08/07(水) 20:10:49.00ID:ZGVac6R9M
>>421
環境依存だけどな
2024/08/07(水) 21:00:57.38ID:8g4HWsVjd
tkinter
2024/08/08(木) 01:18:29.98ID:1Vd1IV+d0
パッケージソフトとして売るとかを考えなければ、Pythonが一番使いやすい
作りたいものを最も早く作れるのがPythonだと思う
427デフォルトの名無しさん (ワッチョイ 5391-2913)
垢版 |
2024/08/08(木) 06:39:11.73ID:DOZ5K/JU0
2024/08/08(木) 07:19:35.70ID:m9Txas98M
AUTO CAD 互換 CADを作ってクレメンス
2024/08/08(木) 07:49:05.69ID:JM+PJhcq0
普段使ってる大抵のソフトはpythonで作れない
動画再生ソフト、表計算ソフト、テキストエディタ、webブラウザ、
画像編集ツール、音楽編集ツール
2024/08/08(木) 08:31:55.19ID:P+zsor/K0
作れないわけじゃないんだよなぁ
作っても遅くて使い物にならないから作らないだけで
2024/08/08(木) 08:43:03.90ID:jWUK8f0s0
この手の作業を自分の好きなように自動化させる事に向いている
2024/08/08(木) 10:20:12.40ID:m9Txas98M
CVATを自動操作するツールを作ってクレメンス
433デフォルトの名無しさん (ワッチョイ eb8e-AHtZ)
垢版 |
2024/08/08(木) 13:37:28.10ID:NjUiRtxY0
>>426
自分の見える極狭い範囲のことだけなのに、全部がそうだと思い込む幼稚な頭の人かな
2024/08/08(木) 17:25:55.09ID:fFJcJS5t0
複数の変数初期化というか同じ値放り込みたいんだけど
a,b,c = (None for i in range(3))

なんかもっとスマートな方法ないのかな
2024/08/08(木) 17:30:52.14ID:ntQwkVt/0
レスした瞬間そっこー解決したわすまん
a=b=c=None
2024/08/08(木) 17:37:12.76ID:1Vd1IV+d0
>>429
既にいいものが存在していて作る必要がない
437デフォルトの名無しさん (ワッチョイ eb2a-DL1l)
垢版 |
2024/08/08(木) 18:32:36.69ID:yAKyTPF90
以下を超える迂遠な方法を考案してくれたまえ、キミタチ。

>>434
> a,b,c = (None for i in range(3))
2024/08/09(金) 07:45:57.46ID:wGtJ6OQCa
パフォーマンスを最適化するためのヒント

ループよりもリスト内包を使う
ジェネレータを活用して効率的な処理を行う
高価な関数呼び出しをキャッシュする
コンテキストマネージャでリソースを管理する
NumPyで演算をベクトル化
2024/08/09(金) 08:10:44.56ID:RWMssfNv0
速度要ることが見えてるなら最初からpythonを選ばないのが正解

全探索でパズル解かせるとかやると、終わるまで何日もかかる
工夫で1桁くらい速くなるけど、結局Cに移植とかになる
2024/08/09(金) 10:18:56.99ID:UdzYyqcH0
>a=b=c=None
書き方の問題とは別に1つの関数内で3つの変数に明示的にNoneを代入する状況は避けたほうがいいように思う
2024/08/09(金) 16:44:08.25ID:n/+vIJnt6
それはNoneだからってこと?それともどんな値でも変数に同じ値入れる書き方を避けろってこと? >>440
2024/08/09(金) 16:46:04.18ID:YhWPQaiH0
カレーが足りなくなるって意味ではないか?
2024/08/09(金) 16:51:15.37ID:RWMssfNv0
C言語でNoneを表現したかったらどう書くんだろう
2024/08/09(金) 17:11:13.51ID:b1x0XXPu0
enum { None, Other }
2024/08/09(金) 22:09:09.69ID:SHwt0dCa0
初心者質問で申し訳ないんだが、仮想環境ってソフト作るときの保全のためだよね?
別に入門書とか勉強してる間は仮想環境でやらなくてもいいよね?
2024/08/09(金) 22:10:34.36ID:RWMssfNv0
普通に実用で使ってるけど環境なんか作ってない
2024/08/09(金) 22:12:48.00ID:SHwt0dCa0
>>446
そうなんや
なんか入門書とかでライブラリとか入れたりして後から削除するとゴミが残ったりみたいな面倒なことがあるなら
仮想環境作った方が良いのか?って思ったけど気にしないで良いんやな
2024/08/09(金) 22:21:33.97ID:RWMssfNv0
みんな最新にしてて問題が起きなければそれでok
複数のバージョンを切り替えないといけない事態が発生した時に考える
2024/08/09(金) 22:55:56.94ID:OlqxUP9U0
>>441
どちらかと言えばNoneだから
テストコードとかならあまり気にしない
2024/08/10(土) 04:21:40.95ID:+orWZu4Z0
階層上のpythonファイルをimportするとき相対パスの方が圧倒的に可読性高いと思うけど
頑なに絶対パスで書こうとする人ってなんなの
2024/08/10(土) 08:10:56.63ID:QgqIePKL0
絶対に同じ環境でしか使わないぞと言う鋼の意思表示
2024/08/10(土) 08:22:50.16ID:1xdao/bW0
FSのパスじゃなくてsys.pathからのパスじゃないの?
それならトップから書いてても言うほど変ではない
どこまで階層掘ってるのかしらんけど
2024/08/10(土) 14:33:30.87ID:Co0E/0r+0
相対パスで通らなかったからだよ
2024/08/10(土) 14:40:10.17ID:l9TUhztj0
動いてたものが、ちょっと起動の方法を変えたら動かなくなったりする
相対パスとかカレントから読むとかはやらないのが吉
2024/08/10(土) 16:20:46.44ID:Y8Ais/pl0
環境変えたら動かなくなる、ってそれ相対やらは関係ないのでは
2024/08/10(土) 16:25:51.39ID:laPgG88d0
>>449
どちらかと言えばのニュアンスがちょっとわからないんだが
def hoge(a=None,b=None,c=None)
もやめといた方がいいってことかな
2024/08/10(土) 17:04:28.50ID:l9TUhztj0
変数を初期化する、というアイディアがあんまり無いんだろうな
何かを入れる為に変数を用意するんだから、入れる前の値なんかどうでもいい
2024/08/10(土) 17:20:32.64ID:1xdao/bW0
最適化にはつながらないけれど
複雑化が進むから変数はなるべく再代入したくないな
2024/08/10(土) 17:28:23.63ID:l9TUhztj0
予め何か入れておいて、判定なりループを抜けて、
一度も値が変更されなかった印として元の値が残ってる

というアルゴリズムは、自然ではあるし、読みにくくもないし、
昔からある定番のものだけど、バグの元なんだよな

必ず何かが入るようにして、もし漏れてたら参照時にエラーになる
という作りにした方が安全
2024/08/10(土) 18:26:13.49ID:5o6SHZwH0
なんとなくyoutubeとか見ながらエディタはVScodeにしたけど
Pythonメインで使うなら後々パイチャームが良いみたいな感じになったりする?
どっちも使ったことある人おすえて
461デフォルトの名無しさん (スフッ Sd33-QylA)
垢版 |
2024/08/10(土) 23:55:03.51ID:oQf4NdPPd
どっちでもいい
2024/08/11(日) 10:42:41.95ID:Ss89Ryfu0
そ、そんな……
2024/08/11(日) 11:22:20.74ID:THlJTk2n0
>>456
それは別にいいと思うよ
避けたほうがいいと思うのは
def hoge(arg):
 a = b = c = None
 …
 return a, b, c
とか
def hoge(arg):
 a = b = c = None
 …
 return fuga
とか
2024/08/11(日) 12:04:42.70ID:RDMWd10n0
C言語の頃の因習だよな
auto変数を宣言してもスタックからアドレスが確保されるだけで、
何が入ってるかは判らないので、必ず最初に初期化しましょうという文化が出来た

面倒なので、perlとかは初期化せずに参照しても初期化済ということになった

そんな手抜きをするとやっぱりバグるので、
未定義という状態を追加して、参照したらエラーが出るようにした

言語仕様が許してくれるからより安全な方法が使えるというだけで、
C言語に戻れば初期化しないなんて言語道断
2024/08/11(日) 15:26:51.19ID:5SiizQbSd
>>463
つまり
>>449 >どちらかと言えばNoneだから
ってことは
def hoge(arg):
a=b=c=0

とかなら別にってこと??
2024/08/11(日) 15:51:01.99ID:ajGyZG3Q0
2段落目3段落目のperlのundef話は違うような
2024/08/11(日) 16:06:10.84ID:C5P4dh5y0
その関数内で使う変数は全て、関数内の最初に宣言
ってのは違うと思うけど
重要なやつくらいは良いのでは・・?
2024/08/11(日) 16:50:21.66ID:kqf7VZo90
> そんな手抜きをするとやっぱりバグるので、
> 未定義という状態を追加して、参照したらエラーが出るようにした

全く違う言語でだけど
初期化をすると、このエラーを抑制してしまうため
未初期化を意味するような無駄な初期化は止めるような流れになった、とか
2024/08/11(日) 17:15:29.30ID:k+EvwTGb0
デフォルト引数も初期化宣言みたいなもんじゃないの?
関数アノテーションに組み込みでバリデーション機能がないわけで
宣言は仕方なくね
2024/08/11(日) 18:47:02.80ID:THlJTk2n0
>>465
そうだよ
2024/08/11(日) 18:53:04.00ID:2/3U6L920
まわしてるなら上書きされるし、except
a=0
にするだけやん
2024/08/11(日) 19:36:57.58ID:p0V4Zmp7d
>440の発言が曖昧で立ち位置がよくわからないのでまとめてみた
(1)複数宣言関係なく、変数宣言を避けたほうが良い
(2)a=b=c= のような複数宣言を避けたほうが良い
(3)複数宣言関係なく、 None の代入を避けたほうが良い
(4)a=b=c=None のように複数宣言かつNoneを避けたほうが良い

(1)>440 >1つの関数内で3つの変数に少なくとも複数にはこだわっている?ので(1)は無い
(2)特に言及なし
(3)>456→>463 >それは別にいい、とのことなので(3)は無い
(4)避けたい

そもそも>どちらかと言えば
だからNone以外もよろしく思っていないってことなので
(4)>(2)ってことだと思うが
>>470 >そうだよ
とのことなので、一番近いのは(4)

しかし>440 >書き方の問題とは別に
とあるのでまとめると
・明示的な
・複数の宣言
・Noneの代入
これらを避けたいってことが確定

じゃあ例えば、同じ関数内で
・明示的に
・ひとつaだけの宣言
・a=None
なら良いんだ?って疑問がある

ひとつは良くて、2つ、3つ、、はだめなの?
その線引きはどこなの?みたいな
2024/08/11(日) 19:41:48.53ID:RDMWd10n0
440の人そこまで考えてないと思うよ
474デフォルトの名無しさん (ワッチョイ e52a-Fna2)
垢版 |
2024/08/11(日) 19:51:35.98ID:hIF7GGOd0
>>472
>>440 の言った「1つの関数内で」が、(1)-(4)の考察から漏れているじゃん。悪いけど、及第点はあげられないな。再考要。
2024/08/11(日) 20:10:03.84ID:LHlML4lad
(1)-(4)すべて1つの関数内での出来事なら何も漏れてないじゃん
2024/08/11(日) 21:31:42.64ID:CnADXAtN0
もうちょい中身のある話しない?
2024/08/11(日) 22:12:38.31ID:RDMWd10n0
未定義である、Noneというオブジェクトである
みたいなことが変数に入ってて当然になってるけど、
C言語の時代から見たらミラクルなんだよな

00-ffしか入らない筈のuint8をint16に拡張して-1が返ったらエラー
くらいの苦し紛れしかできなかった
intだろうがfloatだろうがポインタだろうが何でも扱える状態で、
それでも特別な数を扱いたかったらどうしたらいいの

それはもう、全てオブジェクトにするしかない
478デフォルトの名無しさん (ワッチョイ e52a-Mft2)
垢版 |
2024/08/11(日) 23:18:34.32ID:hIF7GGOd0
>>475
1つの関数内に限定した考察(1)-(4)と
限定されない考察(1)-(4)に、差異は無いの?
2024/08/11(日) 23:22:10.48ID:RDMWd10n0
それはもう472しか興味ない話
2024/08/11(日) 23:43:17.68ID:kFb5FPwO0
>>440に対するレスかつ、結論の疑問が>同じ関数内で
と言ってるのに、限定されないケース持ち出すバカっているんですね
2024/08/11(日) 23:55:15.90ID:qxvMX8m80
まぁ決定的なのは
>1つの関数内で3つの変数に明示的にNoneを代入する状況
ほほう、なんで・・?
って部分の説明が一切されることなく
「いいと思うよ」「避けたほうが良い」
と感想レスでぐだぐだ消費してるところだわな
本来1,2ターンで終わる話やろ
2024/08/12(月) 00:03:43.33ID:3e/W6rSq0
もういいよ
2024/08/12(月) 00:29:47.69ID:Df7qTgwp0
発端部分はどうでもいいんだよ
ただの戯言

そこは無視して、面白い話題に展開させるのが腕の見せどころ
2024/08/12(月) 17:05:54.78ID:RqyD79my0
>>472
まとめ内容はだいたい合ってるよ

>ひとつは良くて、2つ、3つ、、はだめなの?
>その線引きはどこなの?みたいな
1つなら点滅黄信号
2つなら点滅赤信号
3つ以上なら赤信号
くらいの運転感覚

状態変数は増えれば増えるほど関数が複雑化するので
可読性/保守性を下げない範囲で可能な限り減らしたほうがいいというのが大前提

Optional型の変数はNoneの場合のハンドリングが必要だから余計に複雑度が増す
だからNoneで明示的に初期化が必要な関数ローカルの状態変数が3つもあるのなら
リファクタリングを検討したほうがいいと思ってる

x=y=z=0のようなのも無条件で問題なしということではなくてNoneほどは気にしないだけ
2024/08/12(月) 17:20:13.21ID:3e/W6rSq0
Optionはモナドがないと単にチェックが面倒なだけなんで要りません
2024/08/12(月) 17:41:21.72ID:kQJ3Ra+V0
やはり主観の感覚で言ってただけか
2024/08/12(月) 17:46:09.35ID:t+JXHNsb0
数値型でも無意識にstrに変換されたりするので
むしろ気休めで宣言することでコードの可読性が上がるケースはあるな
2024/08/12(月) 22:12:29.66ID:piSTAl/Q0
>>429
簡単なものならどれも作れるだろ
2024/08/12(月) 22:13:50.74ID:Df7qTgwp0
作れるもんなら作ってみれ
2024/08/12(月) 22:17:45.91ID:piSTAl/Q0
PyQtのデモに簡単なものがありそうなものばかりなんだが
2024/08/12(月) 22:21:04.23ID:/YNzioSd0
何を以て作ったと言えるか定義にもよるよな
ライブラリ使っちゃいけない縛りだったら絶対やろうと思わないわ
2024/08/12(月) 22:30:00.09ID:piSTAl/Q0
Pythonはライブラリが豊富だから使われているんだから、ライブラリを使うことが前提条件だよね
2024/08/12(月) 22:32:25.47ID:piSTAl/Q0
ライブラリの中には、自分のプロジェクトに合わない法的縛りがある場合があるからそういうのは除外しないといけないけど
494デフォルトの名無しさん (ワッチョイ 6219-vl8G)
垢版 |
2024/08/13(火) 05:10:08.20ID:OFJnbVf+0
法的w
2024/08/14(水) 01:06:20.97ID:UXFppRKs0
Python初心者に「このライブラリ面白いから入れて遊んでみ」ってやつでおすすめある??
496デフォルトの名無しさん (ワッチョイ 09c8-EAYk)
垢版 |
2024/08/14(水) 01:17:50.66ID:Nyjt3p2D0
sleniumかのう
2024/08/14(水) 02:23:20.75ID:W/sfDy9u0
>>495
これが便利だけど、Listboxウィジェットでないと動作しなかったよ
でもListboxで十分
https://office54.net/python/tkinter/file-drag-drop
2024/08/14(水) 03:01:41.34ID:XIgNdm080
Streamlit
2024/08/14(水) 06:52:49.57ID:JNnpce7i0
1年前くらいにStreamlitでめっちゃ遊んでたが
あれから何か進展あったかな

当時は2段以上のページ遷移の実装がめんどくさかった記憶
2024/08/14(水) 09:36:06.91ID:YQXXxccb0
a系列とb系列の同じ数のデータがあって、
a系列の値でソートしたb系列のデータが欲しい

どういうデータの持ち方をするのが一番適切だろう
2024/08/14(水) 12:13:31.29ID:iBvZxVPY0
>>500
どういうデータの持ち方をするのが一番適切なのかは
そのデータにまつわるすべてのCRUD操作について
頻度・データ量・性能要件などの詳細を明確にしてから検討するもの
a系列の値でソートしたb系列のデータが欲しいという
一つの操作だけで判断できるものではない
2024/08/14(水) 12:49:52.86ID:YQXXxccb0
a[i]とb[i]の場合
sorted(range(len(a)), key=lambda x: a[x])

l[i]['a']とl[i]['b']の場合
sorted(l, key=lambda x: x['a'])

l[i].aとl[i].bの場合
sorted(l, key=lambda x: x.a)

もっとすっきりと、
sorted(l, key=a)
みたいに書けないものか
503デフォルトの名無しさん (アウアウエー Sa4a-ZlnX)
垢版 |
2024/08/14(水) 14:51:05.74ID:92pG5tQ9a
>>500
pandas
2024/08/15(木) 09:30:21.30ID:7XNNm+7n0
a[i]とb[i]の場合は
sorted(zip(a, b), key=lambda x: x[0])
こんなんでもいい
2024/08/15(木) 09:31:33.49ID:IOoAsN9I0
keyいらん
2024/08/15(木) 09:33:42.86ID:7XNNm+7n0
そうだった
1つ目のタプルでソートするんだった
忘れてるくらいだから、暗黙として使うと読めなくなりそう
2024/08/15(木) 09:44:05.66ID:7XNNm+7n0
そうすると、key要らない個別リストで持つのが一番シンプルだな

格納方法の手間はそれぞれでかなり違ってて、
個別リストは個別にappendするだけ
辞書は準備できたらセットでappend
classは当然classが必要 タイミング等は辞書と同等

要素2個ならリストでいいけど、3個以上のものを個別に持つのは気持ち悪いので、
そんなデータ構造なら他の理由からもclassが楽だろう
でも2個のケースが圧倒的に多い
2024/08/15(木) 09:59:05.23ID:hgBkEHHk0
独自の振る舞い与えたりやインターフェースにしたいならクラスで書いてもいいけど
Pandasが楽でいろいろ手厚い
有名だから他人の理解も得られやすいし
2024/08/15(木) 10:31:29.70ID:7XNNm+7n0
要は2次元配列を扱おうとしていて、pythonにそんなデータ構造は無いから苦労してるだけなんだよな
numpyを入れれば解決するかというと、
やってやれなくはないけど、逆に複雑なことになってしまう
もう一重被せてpandas、ということなんだけど、pandasはあんまり近寄りたくないんだよな
2024/08/15(木) 10:48:30.73ID:7XNNm+7n0
polarsの場合
df.select(pl.col('val', 'name').sort_by('val'))

抽象化が進む
selectが要るのは、そういうものなのだろう
2024/08/15(木) 13:32:50.80ID:l9rIXl+/0
特定のHPを開くやつ作ったんだけど
こんなエラー出る。 詳しい人意味と対策教えてください

DevTools listening on ws://127.0.0.1:54343/devtools/browser/87ef9d15-6c10-4859-ad8e-0f40190709a3
[4184:21844:0815/132851.755:ERROR:ssl_client_socket_impl.cc(883)] handshake failed; returned -1, SSL error code 1, net_error -107
[4184:21844:0815/132851.760:ERROR:ssl_client_socket_impl.cc(883)] handshake failed; returned -1, SSL error code 1, net_error -100
2024/08/15(木) 13:42:48.29ID:7XNNm+7n0
Seleniumよりいいの?
513デフォルトの名無しさん (ワッチョイ 6219-vl8G)
垢版 |
2024/08/15(木) 15:02:01.87ID:wvw+pa8M0
>>495
omanko
2024/08/15(木) 15:10:49.80ID:WrspfLfR0
>>505>>506
sorted(zip(a, b))とsorted(zip(a, b), key=lambda x: x[0])はソート結果が違うので要件を見極めてから使い分けてね
2024/08/15(木) 15:51:14.21ID:FZXdmvv90
>>511
SSL証明書のエラー
証明書のチェックを無視しろ
516デフォルトの名無しさん (ワッチョイ 0910-EAYk)
垢版 |
2024/08/16(金) 14:50:00.96ID:csQM6Qg30
>>515
どうもありがとうな。
きちんとページ開いてクリックはされてるから
このエラーはほっとけばええってことか。

>>336>>511はワイや。
誰も教えてくれんから
自力でポイントサイトに毎日自動でログインして
必要箇所クリックしてくれるプログラム作ったで。
2024/08/16(金) 16:30:40.64ID:ghvDT0nG0
kindleのアンリミテッド対象でオススメの入門とかある??
2024/08/16(金) 16:52:04.12ID:Lkm5DKgc0
無いだろうな
基礎的なことはネットで足りる
進歩的な内容は金かかる

effective pythonの旧版がamazonで送料込み500円しないので、それをポチる
2024/08/16(金) 18:05:55.70ID:djtLdUd20
python使い始めたが、
配列のdeepcopyじゃなく、copyって何に使うの?
コピー元の値も変わっちゃうけど
2024/08/16(金) 18:11:44.26ID:6tCTFnFi0
別名
2024/08/16(金) 18:15:45.87ID:mRy6k/zm0
>>519
shallow copyとdeep copyという一般概念を学んでくれ
ChatGPTにでも聞けば丁寧に教えてくれるはず

それ後に
なぜコピー元の値も変わっちゃうと思っちゃったかを振り返ってくれ
522デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 18:16:18.01ID:GehV+MKu0
>>519
それは用語のセンスがなかっただけ
523デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 18:17:23.95ID:GehV+MKu0
>>521
そもそもちゃんとドキュメントや書籍を読めよ!
2024/08/16(金) 18:38:35.65ID:Lkm5DKgc0
https://i.imgur.com/Jw8AJnB.png
主に自分の理解用教材画像

ただの代入はコピーではなく別名定義
コピー元を変えるとコピー先も当然変わる

copyは別オブジェクトを生成する
コピー元を変えても(浅いレベルなら)コピー先は変わらない

copyであっても、オブジェクトの中身はただのクローンなので変わってしまう

中身も変えたくない場合はdeeocopy
2024/08/16(金) 18:43:15.00ID:Lkm5DKgc0
deepcopy使ったのは、再帰でパズル解いた時くらいだな
分岐先に渡したデータを変更しても戻った時には保存されてないといけない
2024/08/16(金) 19:06:56.83ID:nKGchtUv0
>>523
めっちゃブーメランささってない?
ちゃんとドキュメントや書籍を読んでたら>>522はないだろ
2024/08/16(金) 19:20:56.16ID:Lkm5DKgc0
参照するだけならクローンもコピーも不要なんだよな

わざわざcopyするということは、その後どちらかを書き換える前提な訳で
書き換えるけどshallowしか使わない設計にしてるから大丈夫な筈
という綱渡りをしてるとしか思えない
528デフォルトの名無しさん (ワッチョイ 6d0e-u7mq)
垢版 |
2024/08/16(金) 20:09:34.83ID:l1JK1BDI0
>>527
コピーは割とよく使われるぞ
以下のような関数呼び出しでも x から data へのシャローコピーが起きるし

def func(data: list[int]):
 print(data)

x = [1, 2, 3]
func(x)

処理を分割することはよくあるので、そうと認識してないかもしれないけど、コピーは自然に使われてる

補足すると、これをコピーでなく参照渡しと思う人もいるかもしれないけど、それはよくある誤解
なぜなら、funcの中で data が指すリストの中身を変更することはできるけど、呼び出し元の x にstr など別の値を代入することはできないため
funcの引数dataは呼び出し元の変数xではなく、xからコピーされたものが渡されている
2024/08/16(金) 20:11:22.47ID:Lkm5DKgc0
参照しかしないなら怖くもなんともない
2024/08/16(金) 20:15:51.59ID:Lkm5DKgc0
https://i.imgur.com/vnmAGYS.png
こんな風に、簡単に壊れてしまう
2024/08/16(金) 20:19:07.36ID:Lkm5DKgc0
https://i.imgur.com/OEZkRte.png
こっちで
2024/08/16(金) 20:19:17.75ID:HvNqjSRc0
>>528はコピーではない
2024/08/16(金) 20:32:15.57ID:Lkm5DKgc0
https://i.imgur.com/hMHBIXd.png
コピーではなく別名だね
参照渡しと思ってもいい

参照渡しは誤解だという誤解はどこから発生したのだろう
2024/08/16(金) 20:35:35.86ID:HvNqjSRc0
参照の値渡しと参照の違いを学んで混同したんだろう
535デフォルトの名無しさん (ワッチョイ 6d0e-u7mq)
垢版 |
2024/08/16(金) 20:45:28.33ID:l1JK1BDI0
すまねえこれは自分の勘違いだ
x = [1, 2, 3]
y = x
z = x.copy()

のyの動作もシャローコピーと看做せると認識してて、関数の引数の挙動はこれと同じであると言いたかった

参照渡しではないというのは、C++やC#にあるような参照渡しはできない (呼び出し元の変数に別の値を代入することはできない) というのが主張
2024/08/16(金) 20:49:44.47ID:Z05myL510
pythonに参照渡しは存在しない
というのは暴言か
2024/08/16(金) 21:01:45.54ID:Lkm5DKgc0
無いでしょ
全てが、参照の値渡しの筈
2024/08/16(金) 21:16:31.87ID:Lkm5DKgc0
pythonに参照渡しは無いので、参照渡しの挙動で中身を推測すると間違う

値渡し pass by value
参照渡し pass by reference
参照の値渡し(共有呼び, オブジェクト呼び) call by sharing, call by object

アドレスではなくオブジェクトを渡しているというのが最大のミソなんだけど、
何が違うねんという理解でもあまり困らない
539デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 21:19:00.72ID:GehV+MKu0
Pythonの実装はポンコツだから、Pythonそのものは誰も好きじゃない。

いいところは例外が事前に定義されているところ。
540デフォルトの名無しさん (ワッチョイ 6219-TmDL)
垢版 |
2024/08/16(金) 21:21:26.06ID:GehV+MKu0
>>538
いわゆる参照渡しの変数の値を参照しても格納されている値は保証しないというのが、多くのプログラミング言語だ。

これは実装次第で変わってくるため、言語仕様とは別の話。
2024/08/16(金) 21:49:58.00ID:gx6pQUFB0
テキトー書いてるひとは自己申告してくれるとたすかる
いまのところ把握できてるけど
2024/08/16(金) 21:59:20.67ID:ClCJIGxl0
>>533
「基礎的なことはネットで足りるキリッ」からの参照渡しを知らんとかお前は全然足りてないやんw
2024/08/16(金) 22:04:19.29ID:Z05myL510
ミュータブルとかイミュータブルとかは
当初は「なんでこんな仕組みなんだ」
って思うけど、値渡しの挙動とか考えると
納得がいくんだよな
544デフォルトの名無しさん (ワッチョイ 1984-hgB2)
垢版 |
2024/08/16(金) 22:15:25.83ID:N3uolhZj0
参照渡しの議論をする人は、C++での参照渡しを理解してからか、
そうでないなら独自の「参照渡し」の定義をしている可能性があるので定義を述べてからにしてほしい

def f(x):
x=2

y=1
f(y)
print(y)
で2が出るのがC++でいう参照渡し
2024/08/16(金) 22:28:01.36ID:xH5s9xm90
冷静に考えると、キーボードカタカタと人生の半分以上を
コーディングに費やす人間がこれから先当たり前になるのって
人類史上、初なんだろうな
まぁ近い将来カタカタする必要なくなる世界線もあるだろうけど
2024/08/16(金) 22:38:18.96ID:sAC4Fqoe0
独自の参照渡しを参照渡しの定義として語る人は何なんだろう
CS勉強してないとこうなるのかな
2024/08/16(金) 22:40:29.02ID:Lkm5DKgc0
元々参照渡しという言葉があったのに、
C++が新しい参照渡しを追加したからややこしくなっている
値渡しと参照渡しの二択の世界で、別のアドレスにコピーして渡すかポインタを渡すかの違いだった

C++で同じアドレスを指す別の変数の書き方が導入された
*pVar としなくても、Var のままで取り扱えて便利
やってることはポインタ渡しと同じ
2024/08/16(金) 22:50:59.65ID:Lkm5DKgc0
pythonの場合は、f(y)を呼ぶと、xにはyというオブジェクトが入っている
それだけの話なので、xに新しいオブジェクトを入れてもyには何の影響もない

C++だとxはyという変数の別名になる
だから、xに行った操作はyにも影響する
2024/08/16(金) 23:28:02.02ID:DX07HNt80
最近どこかで見た話だと思ったら
くだすれで2ヶ月前にあった話だった
こいつ全く学習してないな・・・
2024/08/16(金) 23:34:33.12ID:Lkm5DKgc0
「参照の値渡し」という語がうまいこと言ってるかと思えるかというと
全然そんなことはなくて、意味不明すぎる
これがしっくり来る日は永久に来ないだろう

オブジェクト渡しでええやん
551デフォルトの名無しさん (ワッチョイ 6d0e-u7mq)
垢版 |
2024/08/17(土) 00:00:36.88ID:K84lbgy40
C風に言えばポインタの値渡し
2024/08/17(土) 02:15:20.99ID:FbxJBc5j0
perlだとリファレンス/デリファレンスとか実体参照って言うな
これはわかりやすい
2024/08/17(土) 04:17:21.85ID:oNvrieZ10
>>550
 519だが、
copyの違いじゃなくて、
どういう用途に使われるのかを聞いたんだが、
トンチンカンなバカレスしか返ってこない…
2024/08/17(土) 04:58:48.74ID:jNc9Eb8A0
>>549
俺流参照で理解しといたらいいんじゃない?
どうせニートがかじってるだけなんだろうし
2024/08/17(土) 05:00:58.90ID:eDPa81400
https://i.imgur.com/x4pG7y4.png

intやfloatやstrのような値っぽい変数を渡すと、関数の中でそれを破壊しても呼び元では保存され、
listやdicのようなポインタっぽい変数を渡すと、副作用を持たせることができる
まるで、typeを見て値渡しと参照渡しを切り替えているような、、、

ここに、プログラムなんか全く知らない文系の名探偵を連れてくる
名探偵: 値が保存している関数の処理は全て、"x = "の形式をしている

これが正解であり本質である
2024/08/17(土) 05:19:55.19ID:eDPa81400
値とリストの中間みたいなstrでは顕著で、
str.replace() で置換後を返すんじゃなくて破壊的に置換してくれよとか、
str[0] = ' ' みたいにリスト的に扱わせてくれよと思ってもそんな手段は無い

イミュータブルがイミュータブルなのは、ミュータブルな処理が言語仕様のどこにも無いという
悪魔の証明みたいな方法で実現されている
必然的に、イミュータブルなオブジェクトの入った変数の変更は、新しいオブジェクトへの変更になる
2024/08/17(土) 06:42:25.04ID:xfy35KhQ0
組み込み関数や標準ライブラリが非破壊・破壊で統一感ないのは
互換性のためだからどうしようもないけど
変数のアサインはシンプル動作で誤解しようがない
イミュータブル・ミュータブルにちがいはなく
イミュータブルは獲得時に同じ実体(id)を返すってだけ
558デフォルトの名無しさん (ワッチョイ 498e-gw8m)
垢版 |
2024/08/17(土) 07:30:01.44ID:S6E7v25U0
馬鹿は用語だけ覚えて理屈を理解しないからいつまで経っても馬鹿なまま
プログラミングだけではなく世の中の真実がこれ
559デフォルトの名無しさん (ワッチョイ 7197-hgB2)
垢版 |
2024/08/17(土) 08:05:31.14ID:aGgOhja70
>>555
3ヶ月でいいからごたくを並べる前にCとC++でコード書きなよ。スッキリするから。
560デフォルトの名無しさん (ワッチョイ 6db8-u7mq)
垢版 |
2024/08/17(土) 08:08:33.52ID:K84lbgy40
>>553
この質問についていえば、個人的にはcopyを使う場面ってあまり無いと思う
561デフォルトの名無しさん (ワッチョイ 0931-EAYk)
垢版 |
2024/08/17(土) 08:56:53.76ID:NsTQR03i0
スマホゲームでレア鉱山というのが沸くんだが
それを内部的に沸いたら即取るみたいなプログラムを
教えてください。

お願いしますぺこり
2024/08/17(土) 08:58:23.47ID:oNvrieZ10
>>560
まずは調べろ
的なバカレスが多いね…
2024/08/17(土) 09:46:14.10ID:LklgFq+T0
質問者から見てバカレスに思えるレスが多数つくのは質問内容や質問の仕方がそれ以上にバカっぽいからなんだぞ
反省しろよ
2024/08/17(土) 11:04:30.43ID:eDPa81400
https://i.imgur.com/LR4dCLW.png

数をイミュータブルとする為に、pythonでは全ての数に対して
対応するオブジェクトのidが予め設定されている
なんとなく数学的センスで全ての数なんて相手にしたら無限にメモリが要りそうに思うけど、
何のことはない、
intオブジェクトであることを示すbit列 + intのbit列表現そのもの
で実現できる
python2は本当にそんな感じで、3になって動的にbit数が変わるようになった
2024/08/17(土) 14:09:06.79ID:jNc9Eb8A0
>>553
逆にcooyがわからない理由が不明なんだけどw
例えば整数のリストとか普通にコピーしたくならんか?
そしてコピーした配列の一部だけを書き換える
2024/08/17(土) 14:17:24.07ID:ReFbJvTn0
だいたいメソッドのほうの.copy()で十分だから
copy.copy()の使いどきはあるのかよくわからない
immutableとmutableを意識せずにコピーする用途なんてあるかな
2024/08/17(土) 14:18:31.35ID:SZXysGd00
>>564
馬鹿につける薬はなさそうだなw
2024/08/17(土) 15:31:12.95ID:eDPa81400
https://i.imgur.com/LjROLoj.png

strの場合はそんなに厳密ではない
リテラルに書けば同じidになるけど、演算結果が同じになったとしても
わざわざ同じidに集めたりはしない
2024/08/17(土) 16:21:00.49ID:dSpnymJm0
>>566
任意のオブジェクトをシャローコピーしようとするのがcopy.copy()
基本的にはmutable用
どの型かを意識せずに汎用的にコピーしたいときに使う

copy()メソッドを持つのが確実なら.copy()を呼べばいい
copy.copy()も例えばlistが渡されたら内部的にはlist.copy()を呼んでる
2024/08/17(土) 17:39:52.82ID:oNvrieZ10
>>565


それをやる意図は?
目的は?
571デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 00:56:03.56ID:qMq0AqVM0
>>544
Pythonの関数の実装が、ただのプログラムのジャンプのような説明になっているんだよ。
572デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 00:59:10.22ID:qMq0AqVM0
>>569
Pythonそのものがマシン語、アセンブラでいうところの呼び出しになっていない可能性がある。

関数が後付けだったせいで、コード上の見た目が関数という別のプログラムに見せかけているだけかもしれない。
2024/08/18(日) 01:01:46.95ID:z4/qydmG0
折角中身を隠してあげてるのにCPythonでの実装を知りたがる
でも結局、CPythonのソース読むのが理解の最短距離
2024/08/18(日) 01:14:18.28ID:mCdxu7x30
コピーの深い浅いにかんしては、
多次元リスト(リストを要素とするリスト)でどうなるかということを考えると、
違いはそんなには混乱しないとは思うんだけどね

シャローコピーはスライス式で(意識することなく)作成されることが多いかも
2024/08/18(日) 01:28:14.09ID:z4/qydmG0
何の為にコピーするのか、を考えると、浅いコピーで十分なケースが想像できないんだよな
リストの削除や追加をしたいだけで、要素の中身についてはノータッチな処理
何それ
576デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 02:28:48.09ID:qMq0AqVM0
このスレは初心者だから、データの大きさを気にしてないんだろうな。
2024/08/18(日) 05:45:04.91ID:ucdOco2s0
Pythonのコピーについて調べてみて俺もあまり意識せずにリストのコピーとかしてたけど、コピーしたあとにコピーもとをいじくることってないから別に気にせんでいいなって思った
まぁでも知っておくのは大事やね
2024/08/18(日) 06:56:50.44ID:JrXKrbOQ0
>>564
-500とかどうなんの?
2024/08/18(日) 09:20:21.58ID:SIlzIa7v0
>>577
519だが、
結局、
誰からもまともなレスが無いという…
2024/08/18(日) 10:00:51.35ID:LYouUNCa0
Pythonでスクレイピングするならライブラリは何がおすすめ?
速度が遅いのは嫌だな
2024/08/18(日) 10:57:09.07ID:OzCF4tGS0
>>575
519のレスとかこのレスを見るとシャローコピーを理解してるようには全く見えないんだよね
sortedやreversedだったりスライス([:])だったりlist comprehensionが返すリストは基本的に全部シャローコピーだよ
2024/08/18(日) 11:59:36.35ID:SIlzIa7v0

これ

こういう内容が無いゴミレス
2024/08/18(日) 12:13:23.41ID:z4/qydmG0
参照するつもりしかないけど、処理が別のオブジェクトを生成するから、
どうやってもシャローコピーになるというだけの話

壊す気満々でコピーを作ってるんだったら、シャローコピーでは足りないだろ
2024/08/18(日) 12:40:36.98ID:49joGH2n0
>>579
ついてるだろw
2024/08/18(日) 12:43:36.28ID:OzCF4tGS0
>>583
ほら、やっぱりわかってないじゃん
下手な自演する時間があるならまずは基礎を勉強したら?
2024/08/18(日) 12:47:11.94ID:49joGH2n0
>>579
オブジェクトを共有したい時はコピーでいい
もしくは特定のオブジェクトを差し替えるときに
他のメンバーだけコピーしたいとき
587デフォルトの名無しさん (ワッチョイ 7f24-rgSo)
垢版 |
2024/08/18(日) 13:07:35.94ID:qMq0AqVM0
こんな感じでバッチ処理を実装して数GBも使い果たし、メモリ不足にさせるのがいまどきのベテランプログラマー。
2024/08/18(日) 13:51:01.41ID:SIlzIa7v0
>>585

こういうバカのゴミレス
2024/08/18(日) 14:00:36.90ID:z4/qydmG0
そのままコピペして、物理学のスレとか国際政治学のスレとかに貼り付けても万能に使える
要は何も判ってない奴が謎の理由で何か書きたいだけ

判ってる人の指摘は1行というか1ワードなんだよな
適切なタイミングで必要なことだけを指摘する
短ければ短いほど強力
2024/08/18(日) 14:01:03.05ID:9iBzwKAza
中身あるレスしたらダンマリなんだけどw
おーい>>519>>579
俺にレスして欲しかったんだろー?
俺はレスしたくはなかったけどなー
2024/08/18(日) 14:13:49.37ID:SVV7jetg0
>>575
俺もそう思う
ミュータブルの意味が不明
特に統計処理

関数作って行列渡したら元が変わりましたとか
これよく統計で使ってんな
2024/08/18(日) 14:16:03.28ID:SVV7jetg0
>>575
統計で複数変数のデータセットがあって
既存の変数を加工して合成変数を追加する、とかかな
それにしても元の行列変わるリスクは負わせたくないわ普通
それでタプルとかあるのかもしれないけど
そもそもミュータブルなのがダメ
2024/08/18(日) 14:19:15.83ID:SVV7jetg0
積極的にミュータブルさせたい時は
perlなら実体参照使うけど
構造体が深くなるにつれコードがぐちゃぐちゃになってくるから
pythonの方がマシかもしれないけど
デフォルトでミュータブルなのはやばいと思う
2024/08/18(日) 14:26:22.25ID:49joGH2n0
流石にデフォルトでディープコピーは遅すぎるだろ
数万要素のテンソルコピーしたら終わるぞ
2024/08/18(日) 14:29:56.97ID:9omRSoe40
作るもん無くなって暇になった
専業でもないけどなんか収益化に繋がりそうなお題くれ
2024/08/18(日) 14:36:33.49ID:z4/qydmG0
根本の問題に戻ってくるな
コピーは破壊するけどオリジナルは保存したい処理なんてあるの

殆どのケースは、
・参照しかしないからシャローコピーで十分
・変更するけどオリジナルも同時に変更される前提
のどちらか

コピー側だけ変更するというのは、似たようなデータの二重管理をしてる訳で、
何かアンチパターンをやってる気がする
597デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/18(日) 14:50:10.51ID:tu42Sbmia
>>555
つまらん探偵ごっこなんてしてる暇があるなら
PyObjectのソース観ろ
それで終了するから
598デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/18(日) 14:51:51.47ID:tu42Sbmia
>>558
ほんそれ
599デフォルトの名無しさん (ワッチョイ 7f54-aWDb)
垢版 |
2024/08/18(日) 15:05:37.22ID:GAYaiWBg0
>>596
いくらでもあるでしょ
2024/08/18(日) 15:08:54.32ID:SVV7jetg0
変更して元の行列と比較とか普通にあるぞ
2024/08/18(日) 15:16:22.68ID:49joGH2n0
>>596
木構造とかグラフ構造丸ごとコピーしたことあらず?
差分計算とかそれなりのアルゴリズム書いてたらいくらでも起きるよ
2024/08/18(日) 15:17:02.64ID:SIlzIa7v0
>>596
519だが、
ほんと、
バカレスしか返ってこないよね…
2024/08/18(日) 15:18:16.40ID:SIlzIa7v0
>>602
あ、
でもTransformerを作ったときにあったかな…
2024/08/18(日) 15:22:26.84ID:49joGH2n0
>>602
おーいバカしか言ってねえぞw
バカはどっちだ?
2024/08/18(日) 15:23:47.91ID:49joGH2n0
>>603
おーい自演失敗してるぞ
2024/08/21(水) 01:13:03.16ID:h1OPwVXx0
初心者質問で申し訳ないんだが
文字列はシングルクオートとダブルクオートどっちでやってる???
2024/08/21(水) 07:54:08.92ID:7azkFdqA0
r'"C:\Program Files\dotnet\dotnet.exe"'
みたいなことしたいしな
等価といいつつ、よそのシステムで'が使えないなら、python側で使っとくのがお得
2024/08/21(水) 10:34:49.22ID:BfmcUfOua
フォーマット文字列使うときとかは
a='"A"'
b='"B"'
t1 = f'"{a}" & "{b}"'
t2 = f"\"{a}\" & \"{b}\""

大抵2,3段ネストまでなら耐えられるし、そんなに使わないので
基本シングル使ってる
609デフォルトの名無しさん (ワッチョイ ff2a-hb/w)
垢版 |
2024/08/21(水) 13:32:05.73ID:y4n1hfO50
必ず """"6重引用符(triple double quotes)"""" て猛者はいないのか。
2024/08/21(水) 14:54:06.77ID:9csNguco0
今自作言語のパーサーをPythonで試作してるけど
IDEにレポートできる形式で
複数行にまたがるトークンのパースの面倒さを体験してるから
トリプルクォートは使用をためらう
2024/08/21(水) 15:00:04.91ID:YQ8craup0
関数内で引用符使うとき関数分のインデント水増しされるのすげえモヤモヤするよな
2024/08/21(水) 15:26:37.08ID:9csNguco0
IDEのエディタが最小限の状態管理しかしないから
基本インデント維持で行末がコロンならインデント増やすっていう
簡素なシステムが多い
2024/08/21(水) 19:35:23.85ID:7azkFdqA0
perlで'がそのまま"だと変数の内容が展開される
という仕様だったので、基本は'だった
pythonにf文字列が追加されてからはどうでもよくなった
black通すと"にされる
2024/08/21(水) 20:00:58.88ID:tw7Y79Wx0
そういえば、エスケープのためのバックスラッシュも複数重ねることが必要なことがあるけど
シェルスクリプトでsedを使うといい加減にしてくれっていうくらい必要になって流石に嫌になった
pythonのraw文字列はほんと助かる
2024/08/21(水) 20:14:00.79ID:7azkFdqA0
rawはwindowsのパスを書く時にバックスラッシュをそのまま書きたくて使うことが多いけど、
バックスラッシュで終わるパスがrawでも書けないっていう
2024/08/21(水) 21:08:18.62ID:oFOq2OZ40
>>613
perlのやつ非常にわかりやすい
2024/08/21(水) 21:15:04.72ID:7azkFdqA0
その代わり、全部の変数に$付けないといけないけどな
あの$まみれコードはやっぱり見苦しい
618デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:02:22.40ID:6l3+xVC20
>>606
他のプログラミング言語ではダブルクォーテーションが普通なのでダブルクォートが無難。

シェルスクリプトだとシングルクォーテーションが普通だが、ダブルクォーテーションでくくると文字列という解釈になる言語が多い。

日本語でも英語でもダブルクォーテーションが言葉の括弧書きになる。

シングルクォーテーションは文字列ではなく、文字を表すときに使う言語があるので、高水準言語では文字列はダブルクォーテーションをくくるのが常識レベル。
619デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:04:21.99ID:6l3+xVC20
ネット記事に頼るのではなく、古いものを含めていろんな書籍でどう書かれているのか見比べることが重要。
620デフォルトの名無しさん (ワッチョイ 9f5a-xhLv)
垢版 |
2024/08/21(水) 22:10:45.48ID:7GYl+SWt0
>>606
初心者でどっちがいいかわからないならダブルクオートがおすすめ
pythonやJSでは違いがないとか、C系言語では違いがあるとかわかってきたならシングルクオートかな
621デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:15:19.66ID:6l3+xVC20
Excel VBAも知らねえのか?
622デフォルトの名無しさん (スプッッ Sd1f-mOZh)
垢版 |
2024/08/21(水) 22:17:54.09ID:/wQtpV98d
確かに
ダブルクォーテーションが好きなのは低所得者層、シングル使ってるのは上の層って感じ
2024/08/21(水) 22:21:32.21ID:aRK1aYWv0
C/C++開発者は低所得
たしかにビジネス感覚がズレてはいそう
624デフォルトの名無しさん (ワッチョイ 1faf-pbdr)
垢版 |
2024/08/21(水) 22:40:00.03ID:RAXud0H40
ruffでフォーマットするとデフォルトでダブルクォーテーションになるから自分はそちらに統一してる
モダンなツールがそちらをデフォルトとしてるんだし、シングルに拘る必要もないと最近思い始めた
(もちろんツールの設定でシングルにもできるので、そちらが好みの人はそちらでも良い)
625デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:41:14.56ID:6l3+xVC20
Pythonが作られた時代はダブルクォーテーションとシングルクォーテーションの混在時期だが、ダブルクォーテーションを積極的に使ったのはマイクロソフト社。

混在が混乱を招くという発想でシングルクォーテーションに統一した言語はもっと前からあるが。
626デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:41:53.27ID:6l3+xVC20
>>624
意味が変わることがあるのを知っているのか?
2024/08/21(水) 22:47:54.59ID:7azkFdqA0
Libにあるいろんな他人のコード見てると、'が多数派なんだよな
print用の文字列は"で、引数は'だったり
謎の使い分けがある気がする
2024/08/21(水) 22:51:37.29ID:CS+KsOFL0
こういうのはまずPEP8を見ないといけない(どっちでもよいと書いてあるけど)

String Quotes
In Python, single-quoted strings and double-quoted strings are the same. This PEP does not make a recommendation for this. Pick a rule and stick to it. When a string contains single or double quote characters, however, use the other one to avoid backslashes in the string. It improves readability.

For triple-quoted strings, always use double quote characters to be consistent with the docstring convention in PEP 257.
2024/08/21(水) 23:04:44.31ID:onVNs5El0
日本語キーボードだとどっちもShift必要だけど、英語キーボードならシングルクォートは1キーで済むしな
630デフォルトの名無しさん (ワッチョイ 9fa9-9uNt)
垢版 |
2024/08/21(水) 23:05:37.93ID:8CjSa52E0
文字列にシングルクォートかダブルクォートはでシングルクォートどっち使うか
これ結構色んなとこで聞いたことあるんだけど、シングルの方が書きやすいだった
英語配列のキーボード使い始めたらその理由実感できた
631630 (ワッチョイ 9fa9-9uNt)
垢版 |
2024/08/21(水) 23:09:25.20ID:8CjSa52E0
>文字列にシングルクォートかダブルクォートはでシングルクォートどっち使うか
文字列にシングルクォートかダブルクォートどっち使うか
すいません、ちょっとバグってました
2024/08/21(水) 23:21:36.60ID:7azkFdqA0
全角のダブルクォーテーションマークは開きと閉じでコードが違う
“”(201C, 201D)
〝〟(301D, 301F)
〝〞(301D, 301E)
633デフォルトの名無しさん (ワッチョイ 1faf-pbdr)
垢版 |
2024/08/21(水) 23:31:15.57ID:RAXud0H40
>>626
文字列中にダブルクォーテーションを使う場合はシングルを使う、といった話なら分かってる
あと DocString はダブルが一般的
それ以外の通常の文字列だとシングルとダブルに違いは無いよね?
2024/08/21(水) 23:34:50.10ID:7azkFdqA0
docstringはトリプルじゃないの
逆にそこくらいしか使わない
2024/08/21(水) 23:42:23.11ID:7azkFdqA0
実際にはdocstringを丁寧に書くこともなくて、docopt用なんだけど
2024/08/21(水) 23:44:03.07ID:r25t95e50
コピロットとかじえみにのプログラムコードエラー吐きすぎ
637デフォルトの名無しさん (ワッチョイ 1faf-pbdr)
垢版 |
2024/08/22(木) 00:00:06.37ID:JUiFuZPI0
>>634
基本的にはダブルクォート3つでありシングル3つは使わない、という意図で書いた
例えばDocStrgngを生成するVS Codeの拡張機能なんかでも、ダブル3つは反応するけどシングル3つは反応しない
文字列値はシングルとダブルどちらでも良いけど、DocStigngは明確にダブルの方が良いと思う
2024/08/22(木) 00:16:00.81ID:dqd7XRR/0
mac/win問題あるよな
コーテーション
2024/08/22(木) 00:17:08.85ID:dqd7XRR/0
ダブルコーテーションの文字"の高さが揃ってるからダメなんじゃないって思う
ちょっと上下にずらして欲しい
640デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:06:26.79ID:0OofYQEx0
>>628
それは最初に作ったときの仕様がそうだからだ。他のスクリプト言語の影響を受けている。

自由に使うのはかまわないが、コーティングにルールがないのはダメなプログラマー。
641デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:22:57.56ID:0OofYQEx0
>>633
SQLの世界ではシングルクォーテーションだから、SQL文字列を作成しようとするとシングルクォーテーションはすぐに面倒なことになる。

しつこすぎだが、高水準言語はダブルクォートテーションでほぼ統一されている。
SQLではシングルクォーテーションで統一されている。

シェルスクリプトでは意味が変わることがあって同じではない。

Pythonが出来損ないのプログラミング言語とわかっていないようだが、どちらでもよいというのは統一できなかった歴史があるからだ。

Pythonはシェルスクリプトと似た使い分けがある。
UNIX・Linuxの世界ではシングルクォーテーションはくくった中身の展開する、ダブルクォートテーションは中身を展開しないというルールがなんとなくあり、外部のプログラミング言語やライブラリがバラバラであるためにPythonもフラフラしているだけ。

見ているサンプルがどっちつかずなのは、どっちつかずの悪いサンプルにすぎない。
プロはどっちつかずのコーティング規約など作らない。

Pythonは全体的にコーティング規約を作らないとバラバラになるクソ言語。
642デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:24:59.98ID:0OofYQEx0
初心者スレならともかく、Pythonの言語仕様がよくないと気づかないようであれば、他の高水準言語を先にやった方がいい。
643デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:25:42.34ID:0OofYQEx0
PythonはPerlと同じクソの道を進んだクソ
644デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:31:52.11ID:0OofYQEx0
Pythonでは変数名をアンダーバー区切りで命名するように推奨しているが、無視しているやつも多いしな。
他のプログラミング言語の慣習を持ち込むやつは必ずいるからコントロールが難しい。
2024/08/22(木) 08:40:19.40ID:Mx3L+9qed
Pythonでは伝統的に名前をあまり長くしないでlowercaseみたいに区切らないのが基本で、
アンダースコアで区切るのはどうしても長い名前を付けたい場合の次善の策
最近はアンスコ多用が顕著だけど、あれも本来は他所から持ち込まれた慣習なんだよ
646デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 09:00:26.31ID:0OofYQEx0
>>645
あんた高齢者だろ?
647デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 09:02:44.58ID:0OofYQEx0
短い名称にする理由は、昔は名前が長いだけでデータが大きくなるという理由から避けていた。

いまは短くしてテキストデータを小さくするメリットは皆無。
2024/08/22(木) 09:22:20.02ID:Mx3L+9qed
タイプが楽でしょ
エディタの補完があるとはいえ、Jupyterなんかだとあまり品質良くないし純粋な静的型やJSに比べたら自分でタイプする機会は多い
2024/08/22(木) 09:34:43.72ID:Lj1UZYEn0
会話だと自然と短く言い換えてるのに
コードだと冗長な修飾しがちなひと多くて不思議
2024/08/22(木) 09:42:47.77ID:Mx3L+9qed
最近では生成AIが比較的長い名前を生成しがちだったり、
長い名前の方が生成AIに対して与える情報量が増えてコード生成の精度が向上するという面もあるだろうね
651デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/22(木) 11:05:20.13ID:IKT838Ooa
>>622
めっちゃ判りますωωω
Rustのlifetimeの'は糞
652デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/22(木) 11:10:51.19ID:IKT838Ooa
>>641
シェルスクリプトに限らず
tcl/tkとかRubyωとか使うと良く判る
653デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 11:24:35.95ID:0OofYQEx0
書籍に書かれているサンプルがプロのコード例だと初心者は思い込むからね
2024/08/22(木) 12:53:25.45ID:Z9UBrjVs0
name_listとかname_dictみたいな命名は悪
2024/08/22(木) 13:07:40.15ID:RAm8w+0l0
変数名をタイプするのは命名する時だけで、その後は全部コピペだけどな
2024/08/22(木) 13:29:25.29ID:ClQu8McD0
>>618
ありがと
まだPythonしかやってない初心者ならダブルクォーテーションでいいんだね
ダブルクォーテーションでいきます!
2024/08/22(木) 14:35:19.45ID:wUckOQ9V0
>>654
コンテキスト無しに一律悪と決めつけないほうがいいよ
2024/08/22(木) 14:39:47.77ID:RAm8w+0l0
perlだと$nameと@nameと%nameが同時に使えたのにな
pythonに移植する時は、name_listとかにする
659デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 17:12:40.56ID:0OofYQEx0
>>654
それ英語だと語順が逆だぞ? 
660デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 17:15:37.00ID:0OofYQEx0
ネット上のサンプルだと省略しすぎの名前で何の変数なのかわからない。

しかもPythonは実引数と同じ名前の関数内のローカル変数が使えるなど意味のわからない仕様になっている出来損ない。
2024/08/22(木) 17:21:54.56ID:RAm8w+0l0
name listという英語はある
この場合は、型名を追加しているので語順も何もない
662デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 17:24:07.85ID:0OofYQEx0
ハンガリアン記法かよw
それだったら、逆だろw
2024/08/22(木) 17:39:31.91ID:RAm8w+0l0
逆に書きたいなら好きにすればいい
2024/08/22(木) 18:27:02.99ID:Z9UBrjVs0
>>659
list_of_nameは長い
ただのリスト変数にアンダースコア二つは長い
そもそも型表記するような時点で問題なのでname_listもダウト
namesがアンダースコアなくてよい
665デフォルトの名無しさん (ワッチョイ ff2a-0AGY)
垢版 |
2024/08/22(木) 18:32:55.35ID:faui27PU0
辞書型の names とどう同居させるのよ。
2024/08/22(木) 18:45:32.81ID:rRg/+uPy0
それもっと説明的な名前が必要なパターン
2024/08/22(木) 18:46:11.96ID:RAm8w+0l0
dataの場合はdatasな
2024/08/22(木) 19:10:59.48ID:DpK4yVJU0
is_*
has_*
くらいは使っていいんだろ?
2024/08/22(木) 19:14:12.53ID:Z9UBrjVs0
リストは複数形という規則で命名
辞書はname2ageみたいな規則が普通か
670デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 20:07:24.13ID:0OofYQEx0
単純に本人は日本語の語順にこだわりがあるようだ
2024/08/22(木) 20:30:08.48ID:53tIoiL+d
単語の切れ目の最初の文字を大文字にする派
2024/08/22(木) 20:35:33.25ID:Fhv9WByD0
もうなんなん君らw
カオスやなw
673デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 21:02:28.42ID:0OofYQEx0
キャメルケースみたいなのを使いだしたのが少しあとのマイクロソフトだから、Pythonは何もかも過渡期みたいな状態でできている。

こんなポンコツを初めにやらされるのもつらいよなあ。
いろんな本でもPythonの変な説明と変な用語と変な仕様のせいで、プログラミングそのものに集中できない。
2024/08/22(木) 21:07:49.26ID:RAm8w+0l0
キャメルケースは商標用だろう
一般人はアンダースコアとか知らん

単語の区切り文字としてトークンを分割しない何かが欲しい
となったら、アンダースコアを27文字目のアルファベットとして使うことに昔から決まってる
最も合理的で読みやすい
他の言語にも積極的にお勧めしたい
2024/08/22(木) 21:28:07.83ID:pVnDcuxb0
Pythonで大文字は定数とかクラスだよね
大文字入ってる時点で普通の変数でないとひと目で分かるのは便利よ
2024/08/22(木) 22:11:01.12ID:B47jiXD20
>>659
そんな語学力で大丈夫か?
中1英語からやり直したほうがいいぞ
677デフォルトの名無しさん (ワッチョイ 7f5b-/7EV)
垢版 |
2024/08/22(木) 22:41:09.45ID:0OofYQEx0
>>676
彼はハンガリアン記法のような種別を後ろにつけていると主張しているんだぜ?
2024/08/22(木) 22:47:53.56ID:RAm8w+0l0
要素が1つならそのまま入ってるし、
複数ならリストが入ってる
みたいな仕様あるけど、型は固定の方が座りがいいけどな

言語仕様としては型は動的だけど、静的に使うのが吉
型情報を変数名に盛り込むのは理解の助けになりこそすれ、何もデメリットは無い
2024/08/22(木) 22:49:27.40ID:dqd7XRR/0
シェルスクリプトの変数は全部アンスコつける
2024/08/22(木) 23:03:25.22ID:6IJd/1sO0
コンピュータからすると評価時に区別できればいいから
どう命名しようがどうでもいいけど
人間は文脈で理解をすすめるので冗長な命名されるとなぜか理解が落ちる
専門外なのでわからんけどキャッチボールできてない気持ち悪さを感じるというか
2024/08/22(木) 23:44:13.46ID:DpK4yVJU0
list/lst、dict/dic、set
アンダスコアつけて、頭につけようが、ケツにつけようが、
普通に見てわかりゃいいんじゃないの?

ハンガリアン記法をするつもりじゃないから、
自分はあくまで名前が先で、種別は後付のほうがわかりやすいし、すんなり入ってくる
682デフォルトの名無しさん (ブーイモ MM9f-rgSo)
垢版 |
2024/08/23(金) 18:10:17.63ID:lDDYxdKTM
>>681
日本語のコメントをちゃんと書く習慣がないと変数名を短くしたがる
683デフォルトの名無しさん (ブーイモ MM9f-rgSo)
垢版 |
2024/08/23(金) 18:10:58.59ID:lDDYxdKTM
秋葉原のカフェでコードを書いているやつの画面を見るとノーコメントのコードを書いているやつばかり
2024/08/23(金) 18:15:07.60ID:mpHEIDeg0
ちゃんと書けば基本コメント不要

ここは後で読んだ時に判らなくなるかも、という部分にコメントを書くけど、
判らなくなる書き方をするのが悪い
685デフォルトの名無しさん (ブーイモ MM9f-rgSo)
垢版 |
2024/08/23(金) 18:22:29.48ID:lDDYxdKTM
>>684
それは経験不足だぜ?
他人が見てわかるか、1年後の自分が見てもわかるかどうかは重要。

こうした理由を書かないと将来、面倒なことになる。

コメントを書かないとクソ設計になりやすいし、自分にすべてを任せてくれなくなる。
686デフォルトの名無しさん (ブーイモ MM9f-rgSo)
垢版 |
2024/08/23(金) 18:23:18.76ID:lDDYxdKTM
>>684
「判る」は「分かる」か「わかる」だ。
国が決めた漢字の使い方すら無視した我流だなw
2024/08/23(金) 18:42:11.10ID:dZcKgI9E0
>>686
「判る」は「物事がそれと判別・判断される」(『明鏡国語辞典第二版』大修館書店)という意味であり、「判明」「判別」といった漢語が連想されます。例えば、「倹約と吝嗇りんしょく(注)の違いが判らぬ」「敵方の人間なのか味方なのか判らなかった」などと用いられます。
2024/08/23(金) 18:50:55.75ID:dZcKgI9E0
#ここでは判断するという意味を持つ
わかる

と書くのがコメント主義

判る

と書けばコメントなしで判断するという意味のわかるということが判る
後者であるべきなのだ
2024/08/23(金) 18:59:52.67ID:mpHEIDeg0
裾野の広さを感じる
690デフォルトの名無しさん (ワッチョイ 9fa9-xhLv)
垢版 |
2024/08/23(金) 19:33:03.79ID:04pZ7iG30
どんな状況でもコメントが必要だとも思わないが、
コメント不要になるように書かれていないコードは不正解とも思えない
方程式から求解するコードとか実装の事情に依存せざるを得ないことが多いし、そういうのは十分にコメントを書くかなあ
2024/08/23(金) 20:17:32.58ID:8KPtfjmr0
何回か書いてたら
#いらんやろ
2024/08/23(金) 20:25:35.39ID:g1t4V+RG0
バグがないならコメントは不要
コーディングミスを分析するためにどのような意図であったかを確認する必要がある
2024/08/23(金) 20:28:47.91ID:mpHEIDeg0
そういうのはテストを書く
694デフォルトの名無しさん (ワイーワ2 FF7f-rgSo)
垢版 |
2024/08/23(金) 20:41:02.19ID:Wp5lmOFVF
>>687
漢字の使用は自由だが、政府、文部科学省、マスコミ、国語の機関等で使用に関することを決めている。

辞書を引いたなら「△」という記号がついているから、それは常用漢字の表外音訓というあまり勧められない漢字の使用方法ということだ。
695デフォルトの名無しさん (ワイーワ2 FF7f-rgSo)
垢版 |
2024/08/23(金) 20:42:22.58ID:Wp5lmOFVF
もともとコメントがいらないレベルまでモジュールを分割しろという話が、コメントがいらないという話だも誤解しているだけ
2024/08/23(金) 20:44:32.16ID:mpHEIDeg0
なんでそんなことを今、公衆Wi-Fiから書き込まなあかんねん
697デフォルトの名無しさん (ワイーワ2 FF7f-rgSo)
垢版 |
2024/08/23(金) 21:29:56.30ID:Wp5lmOFVF
>>696
勝手にau Wi-Fiに繋がっているだけ
2024/08/23(金) 21:35:38.93ID:mpHEIDeg0
自動で繋がるのは当たり前の機能で、繋がる環境に君が今いるということだろう
他にすることないんか
家に帰るとか
699デフォルトの名無しさん (ブーイモ MM53-rgSo)
垢版 |
2024/08/23(金) 22:14:23.89ID:YB9xIsOOM
引きこもりなのか?
700デフォルトの名無しさん (ブーイモ MM53-rgSo)
垢版 |
2024/08/23(金) 22:15:06.39ID:YB9xIsOOM
自宅のPCで5ちゃんねるというのもめずらしいよ。
2024/08/23(金) 22:19:32.31ID:mpHEIDeg0
つくづく裾野が広い
駅のホームで電車来てるのに動こうともせずにスマホ凝視してるゴミみたいな層が、
実はpythonに興味あったりするのか
702デフォルトの名無しさん (ワッチョイ 7fe1-rgSo)
垢版 |
2024/08/23(金) 23:10:24.13ID:2ix4xWvO0
>>701
このスレッドはそんな層が見ている
703デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/24(土) 14:46:48.38ID:Jkp0q3NQa
無駄なコメントだらけのソースの方が読む気無くすから
保守には不向き
2024/08/24(土) 15:11:35.07ID:0KuK/xYu0
無駄なコメントは残すくせにドクストリングをろくに書かないやつはダメだ
2024/08/24(土) 16:26:43.77ID:Vyzipepl0
コメントやアノテーションから自動でドキュメント作ってくれたり
GitHub Copilotがもっと進化したらそれすらいらなくなるんだろうな
2024/08/24(土) 16:35:31.39ID:Zj50vJW10
ドキュメントはコメントで自由なフォーマットで書いた方が書きやすいし読みやすい
707デフォルトの名無しさん (スップ Sd1f-mOZh)
垢版 |
2024/08/24(土) 16:48:38.21ID:/xuo+k7yd
自由ってのもどうなんだろうな
「もう一つのシステムがある」という名言を残したあるAIは自由とはまぼろしである、自由などないと言ってるが
2024/08/24(土) 19:58:26.40ID:DC4qQkGa0
VBAで数本プログラムをした経験です
Pythonの学習にトイプロという無料学習ツールが有りますが、これはおすすめですか?
2024/08/24(土) 20:09:13.96ID:JXm85ww00
はい
2024/08/24(土) 20:10:36.75ID:Zj50vJW10
いつのまにかseleniumにheadless=newというオプションができてた
headlessにするとまともに動かなかったツール類がこれだとちゃんと動く
そもそも動かないのがおかしいんだけど
2024/08/24(土) 20:12:53.79ID:9n64B4is0
イマニューから
@abhishekkrthakur
見とけばええんちゃう
712デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/24(土) 20:35:15.84ID:3LYifkzea
>>707
セカンドライフか
2024/08/24(土) 22:43:33.25ID:WACVsRYw0
ITエンジニアの人いる?
Pythonって何に使われてるの?
AI以外で。

バックエンドってとこ?
714デフォルトの名無しさん (ワッチョイ cdbe-wv70)
垢版 |
2024/08/25(日) 00:10:32.73ID:0kUqZtA70
用途の多い言語だし一概に言えるものじゃないと思う
その質問をして、ここで出た回答だけを見て「Pythonはこういう用途」と言えるものでもないかと
2024/08/25(日) 00:12:58.35ID:VNYc2uAC0
PC用アプリ作ってるけどフロントにpython のapi を出してる
2024/08/25(日) 00:46:01.00ID:RYi2McLx0
>>715
そうなんだ

webじゃなくWindows用ソフトってこと?
2024/08/25(日) 04:20:36.13ID:m6R0xWtd0
アプリならDropboxとか
Unix系OSの管理スクリプトもPython多い
クラウド開発基盤のSDKはまずJS/Python用が提供されるイメージ
2024/08/25(日) 07:08:32.01ID:v8rADpZv0
>>709
ありがとうございます
トイプロの形態だと、段階的に習得できそうです。
2024/08/25(日) 08:18:55.02ID:hNWqtkNw0
TOYPROみたいな難易度だと馬鹿にされてる気にならないか
AtCoderの過去問のギリギリ解けないくらいの難易度に挑戦するのがいい
2024/08/25(日) 12:06:13.04ID:RYi2McLx0
>>717
ふむ

わりとバックエンド系が多い感じかな?
AIしか作ったことないから、よくわからないわ。

最近は、JavaScriptを勉強し始めたわ
2024/08/25(日) 16:43:39.90ID:4hCnijZ/0
Pythonは少なくとも国内ではバックエンドというかバッチ処理が多い
COBOL→Java→の流れでSIerのゴミが大量に流入してきている
2024/08/25(日) 17:01:03.91ID:RYi2McLx0
>>721
ふむ

昔つくったCOBOLを、Pythonで作り直すって感じ?
需要は多いのかな?
2024/08/25(日) 19:14:35.71ID:iGZXlcQ10
COBOLは十進法をきちんと扱えるという以外にはほとんどメリットがない言語という印象しかない
2024/08/25(日) 20:04:56.14ID:hNWqtkNw0
大昔の言語なのに自然言語みたいに書こうと思っただけで凄い
2024/08/25(日) 20:09:37.74ID:hNWqtkNw0
ADD 1 TO A
と書いてあるのをパースして a += 1 の意味だと解釈するのと、
Aに1を加算する
1をAに加算する
と日本語の語順になってるのとでは難易度違うだろうか
2024/08/25(日) 21:54:50.38ID:ccGLiIcN0
JavaですらDecimalのバッチ処理はCOBOLよりも数倍遅くて困ることがよくあったくらいなのにPythonで作り直すとかよほどの特殊案件でもない限りないだろ
2024/08/25(日) 22:05:31.74ID:hNWqtkNw0
1日分のバッチ処理が24時間で終わればokなんじゃないの
728デフォルトの名無しさん (ワッチョイ 22e7-odry)
垢版 |
2024/08/25(日) 22:59:45.21ID:v44CMEUo0
>>726
RDBの存在を無視した構成なんて意地悪な仮定の話だろ
2024/08/25(日) 23:09:54.62ID:RcRPlRXa0
今はそういうのはrustってやつに移ったんだろ
730デフォルトの名無しさん (アウアウエー Sa0a-PBPb)
垢版 |
2024/08/26(月) 10:51:45.30ID:3+7ACU+Ua
>>724
ぴゅう太のことですねわかります
731デフォルトの名無しさん (アウアウエー Sa0a-PBPb)
垢版 |
2024/08/26(月) 10:54:05.39ID:3+7ACU+Ua
>>725
>ADD 1 TO A
>と書いてあるのをパースして a += 1 の意味だと解釈するのと、

違うと思う

ADD 1 TO A
と書いてあるのをパースして inc a だったり add a, 1

a += 1;
と書いてあるのをパースして inc a だったり add a, 1

それぞれはあっても
>ADD 1 TO A
>と書いてあるのをパースして a += 1 の意味だと解釈するのと、
は(当時の発想として)無い
732デフォルトの名無しさん (アウアウエー Sa0a-PBPb)
垢版 |
2024/08/26(月) 10:56:58.91ID:3+7ACU+Ua
>>726
描かれた当時のCOBOLやJavaのDecimalよりも
今の最新機種でPythonのDecimalの方が速ければ良い
ってことしか考えてないのが彼らの発想
(それが良いかどうかは別問題)
2024/08/26(月) 11:00:13.19ID:sJ3BJnnX0
ぴゅう太が好例なんだよな
FORをマワレに置き換えることしかできなくて、日本語としての自然言語にはならなかった

命令文の先頭に動詞が来るという文法体系がパーサにとって都合がいい

プログラム言語に留まらず、数式の記法とか、いろんなもんが西洋的にできている
内包表記は恐らく英語ネイティブにはすんなり読める
734デフォルトの名無しさん (ワッチョイ 2217-HfY5)
垢版 |
2024/08/26(月) 11:53:04.79ID:IX0YJneq0
>>733
書いてることが適当過ぎるだろw
2024/08/26(月) 12:12:33.19ID:Mlnqm5XWd
死諸葛.走(生仲達)
漢語ならよゆーよゆー
2024/08/26(月) 13:51:43.12ID:+6LxARHTF
pythonは高速化されましたが何か?
https://www.youtube.com/watch?v=V979LbYA35c
2024/08/26(月) 17:01:41.75ID:e4+Ag4it0
おCOBOL頂戴せん
738あぼーん
垢版 |
NGNG
あぼーん
2024/08/27(火) 10:48:36.43ID:34JJYlBb0
>>738
そろそろ終了かい
2024/08/27(火) 11:44:47.44ID:oZygCrgB0
レジェンド級の開発者が追放されたらしいけどPython劣化していくの?

>Python理事会が古参開発者を追い出して開発者コミュニティが騒動に
https://qiita.com/rana_kualu/items/0369ab4e1df50bc37d7e
2024/08/27(火) 11:47:18.67ID:Olv0GL3m0
座禅 of pythonを書いた人だな
2024/08/27(火) 12:05:38.30ID:4Xanv84P0
>> うっかりPythonが遅いと口走ったhypernovaが永久BANされたり

www
2024/08/27(火) 12:12:10.27ID:QrAXowH6M
どこかで見た景色だな
2024/08/27(火) 12:21:33.85ID:HtqvmbLe0
python財団胡散臭いよな
2024/08/27(火) 13:41:47.95ID:z6Yz2T7N0
たった3ヶ月のバンやろ
2024/08/27(火) 14:11:40.82ID:2FiUICNvd
Python始めたんだがもしかして数学無勉の人生やとしんどい?
2024/08/27(火) 14:32:50.59ID:e8RCU1u30
たまたまやってこなかっただけならいけるかも
苦手なのが分かってて避けてきたならしんどい
2024/08/27(火) 15:40:58.25ID:jU+wQ64h0
websocket終了させても次起動すると前の命令が残ってて受信しだすのどうにかならないの・・
2024/08/27(火) 16:03:48.90ID:s5Uqc+HW0
外してるかもしれんけどpub/subの話ならサーバ側がそういう実装なんじゃ
サーバ側を見直すか別名でsubscribeしたらどうか
2024/08/27(火) 16:20:43.45ID:+d875zN80
>>749
なるほどやってみるか
2024/08/27(火) 19:17:56.22ID:Q1x0BOco0
大事なのはPythonで何やるかだろう
簡単なタスクを自動化するみたいなレベルなら四則演算できるレベルで十分
2024/08/27(火) 19:34:11.22ID:Olv0GL3m0
プログラムはロジックで、数学は抽象化だからな
必要な素養が全然違う
2024/08/27(火) 20:18:30.22ID:s5Uqc+HW0
ロジックは分野関係なく当たり前の素養
挙げるとしたらモデル化能力
それには抽象化能力ないとね
2024/08/27(火) 20:27:14.51ID:l+VCbokh0
手計算で3日かかるの数秒で出来るのええやん
2024/08/27(火) 20:31:30.23ID:Olv0GL3m0
一般社会のロジックとプログラムのロジックは別物
例外を一切認めないようなrigidなロジックはプログラム特有
2024/08/29(木) 09:40:06.31ID:1jszJs3na
良きに計らえ(シャチョーさん)
2024/08/29(木) 15:55:49.43ID:F2p43Zdw0
import re
s = 'abc\\n'
print(re.search('a(.+)\\\\n', s).groups()[0]) # bc
print(re.search('a(.+)\\n', s).groups()[0]) # error

何故こんな挙動に?
2024/08/29(木) 16:35:29.97ID:01fBpAqb0
>757
>>> len('abc\\n')
5
>>> len('abc\n')
4
>>> len(r"abc\n")
5
https://docs.python.org/ja/3.11/library/re.html#raw-string-notation
正規表現リテラルに関しては3番目のraw stringで書いた方がいい
2024/08/29(木) 16:55:49.87ID:F2p43Zdw0
import re
s = 'abc\\n'
print(re.search(r'a(.+)\\n', s).groups()[0]) # bc
print(re.search(r'a(.+)\n', s).groups()[0]) # error

rで書いてもおかしい気がするんだよな
rなんだから\1個でいい筈なのに
2024/08/29(木) 18:16:38.86ID:vHnGlZfZ0
Pythonのインタープリタが要求するバックスラッシュのエスケープと
正規表現が要求するバックスラッシュのエスケープと
二重にエスケープが必要だから

re.search(r'a(.+)\n', s)は改行コードの`\n`にマッチ
re.search(r’a(.+)\\n’, s)はバックスラッシュ+nという文字列にマッチ
正規表現エンジンに`\n`は改行コードじゃないよと伝えるのに
バックスラッシュをエスケープする必要がある
2024/08/29(木) 18:39:37.30ID:01fBpAqb0
s = 'abc\n' # abc+改行の4文字
じゃないの?ってことなんだけど
2024/08/29(木) 18:42:15.14ID:F2p43Zdw0
rで書いてるなら、文字列中に\nを改行として書くことは諦めろとしか
rとはすべてがエスケープされてるモードなんだからエスケープ要らない約束の筈
2024/08/29(木) 21:44:40.32ID:vHnGlZfZ0
>>762
正規表現ではバックスラッシュが特別なエスケープ文字として扱われるというのは理解してる?

それを理解してれば検索対象文字列に存在するバックスラッシュそのものにマッチさせるには
正規表現としてエスケープしたバックスラッシュ(=バックスラッシュ2つ)が必要というのはわかるよね?

s = 'abc\\n’にはバックスラッシュそのものが含まれてて
それにマッチさせたいわけだから正規表現として`\\`が必要になる
この正規表現でのエスケープはPythonが文字列を解釈するときのエスケープとは別のもの
2024/08/29(木) 21:50:09.32ID:vHnGlZfZ0
一応書いておくけどバックスラッシュの二重エスケープが必要なのはPythonに限らずどの言語でも同じ
raw stringや正規表現リテラルを使った場合は一重エスケープでよくなる
2024/08/29(木) 21:57:35.86ID:F2p43Zdw0
うちの店では昔っからこうなんだよと強弁されても
rawってのは生っていう意味で、未加工なんだよ
\nを改行の意味に変換したら加工しとるやろ
2024/08/29(木) 22:55:26.96ID:F2p43Zdw0
文字列の表現としてはrawでも、それを渡した先でどう扱われるかは別問題
という話なんだろうな
正規表現ですらなくて、誰かの作った関数で\nと連続してたらそれは改行文字として扱います
というお約束ならそれに従うしかない

\nを改行に変換するかもしれない仕組みを2回通すので、
変換されない為には2重のエスケープが必要
3回通すならもっと必要
raw表現はエスケープを1回減らす効果しか無い
767デフォルトの名無しさん (ワッチョイ 22e7-zZP0)
垢版 |
2024/08/29(木) 23:45:40.59ID:N4XBWKhx0
>>763
その指摘は正規表現の話ではない
2024/08/29(木) 23:52:54.64ID:F2p43Zdw0
raw文字列というpythonの仕様と、
reというpython標準のライブラリがごっちゃになって、
rawと書いたら受け取った人もrawとして扱う筈、というのはただの思いこみで、
受け取った側は元がどう書かれてたかなんか知る由もなくただのstrとして受け取って、
そこから独自の字句解釈を開始する、というだけの話
2024/08/30(金) 00:50:19.40ID:S+WRgUIX0
>>765
>\nを改行の意味に変換したら加工しとるやろ
raw文字列は\nを改行文字としては扱ってないやろ
バックスラッシュとnという2文字を渡された正規表現エンジンがそれを改行文字として扱う
それが正規表現のルール
770デフォルトの名無しさん (ワッチョイ 22e7-odry)
垢版 |
2024/08/30(金) 02:17:10.13ID:+R5e+PNr0
そもそもrawデータというのは文字として決めつけて処理するものではなく、バイナリーデータとして扱って処理するものです。
771デフォルトの名無しさん (ワッチョイ 6e2a-EI2W)
垢版 |
2024/08/30(金) 07:42:30.12ID:FeMupkVu0
お前等hexで話せよ。分かりにくい。

6162 635c 6e abc\n
6162 630a  abc.
772デフォルトの名無しさん (アウアウエー Sa0a-PBPb)
垢版 |
2024/08/30(金) 09:24:30.71ID:742oYIECa
import re
s = r'abc\\n'
print(re.search('a(.+)\\n', s).groups()[0]) # !
print(re.search('a(.+)\n', s).groups()[0]) # !!!
773デフォルトの名無しさん (アウアウエー Sa0a-PBPb)
垢版 |
2024/08/30(金) 09:26:08.10ID:742oYIECa
import re
s = r'abc\n'
print(re.search('a(.+)\\n', s).groups()[0]) # !
print(re.search('a(.+)\n', s).groups()[0]) # !!!
774デフォルトの名無しさん (アウアウエー Sa0a-PBPb)
垢版 |
2024/08/30(金) 09:27:35.22ID:742oYIECa
import re
s = r'abc\\n'
print(re.search(r'a(.+)\\n', s).groups()[0]) # !
print(re.search(r'a(.+)\n', s).groups()[0]) # !!!
775デフォルトの名無しさん (アウアウエー Sa0a-PBPb)
垢版 |
2024/08/30(金) 09:27:52.88ID:742oYIECa
import re
s = r'abc\n'
print(re.search(r'a(.+)\\n', s).groups()[0]) # !
print(re.search(r'a(.+)\n', s).groups()[0]) # !!!
2024/08/31(土) 10:12:39.92ID:tZuU9Lep0
webページの取得をconcurrent.futuresで複数同時に回す
取得自体はseleniumで行う
毎回ログインするのを避ける為、ログイン済のdriverをmax_workers分用意する

そこまではいいとして、submitする時あるいはsubmit先で、
今どのdriverが使えるか判断しないといけない
自前でセマフォ作ってもいいけど、そんな管理もしてくれる何かがありそうな気がする
777デフォルトの名無しさん (ワッチョイ 82ad-aK75)
垢版 |
2024/08/31(土) 13:22:35.58ID:fwQH707u0
関数やクラスにインデックスの指す中身の値でなく“インデックス指定”を渡したいのですがうまく出来ません
こんな場合どういうような考え方があるのでしょう(タプルでインデックス数字を渡す?)

# [[0,0,0,0,0],[[0,0,0,0,0]]
alist = [[0]*5]*2

# 値ではなく箱の位置を意図してるが…
hako = alist[0][3]

def change(b):
b = 3
return

change(hako)

print(alist) # 全部0のまま

change(alist[0][4])

print(alist) # こちらも全部0


実際にはrpgゲームの様々のステートやフラグやそのセーブを管理するクラスに
alist[6][15](王さまと喋ったとか)を1にするといった仕事をさせたいと試行錯誤しています
喋る関数、戦う関数やクラスのとこから発生しだいリストを直で操作すればいいのだけど
State.change(インデックス, 1)みたく一元的にやりたいとクラスを作ってきています
目的で位置の固定されたフラグなのでメニューを開いているかState.menu(1)、State.kingtalked(1)などとしその先のクラスの関数で位置を決め撃ちするのが良いのかななどと困って考えています
2024/08/31(土) 13:25:10.84ID:fwQH707u0
しまった質問スレの存在を忘れてましたごめんなさい移動します>>3
2024/08/31(土) 14:06:22.04ID:o+gAgvj50
>>777


ごちゃごちゃ、わからんわ
2024/08/31(土) 14:44:18.13ID:fwQH707u0
>>779
最下段の文は無視してもらって
プログラム部分で
[[0,0,0,3,0][0,0,0,0,0]]
[[0,0,0,3,3][0,0,0,0,0]]なprint結果となる関数への渡し方や手法がしりたい
「書き換えたい多次元リストのインデックス」を関数などに渡しそこで処理する方法

書いてるうちに設計からおかしい気がしてきた
せっかくクラスを勉強してるので無理やりそこでまとめて(意味なく)処理したがってる

なにかあれば聞きたいけど質問は取り下げます
2024/08/31(土) 15:51:47.51ID:Ogc9sW700
無理なのでインデックスを渡すしかない
2024/08/31(土) 16:07:04.72ID:tZuU9Lep0
インデックスといえば
l = [1, 2, 3]
l.index(2)
で1を得るけど、これの計算コストってどんなもんなんだろ
リストだけど固定なのが判ってたら、一旦逆引きのテーブルを作った方が有利なのか、
気にするほどでもないのか
2024/08/31(土) 16:18:16.80ID:Ogc9sW700
https://github.com/python/cpython/blob/5332d989af45378e6ae99aeda72bfa82042b8659/Objects/listobject.c#L3181
ループするからO(n)かかる
それが問題になるならdictに突っ込むとかして高速化すればいい
2024/08/31(土) 16:31:39.30ID:tZuU9Lep0
思ったより何も工夫してなかった
困ったら高速化しよう
まあ、困らないんだけど
2024/08/31(土) 17:34:03.31ID:mruaKbs00
>>777
2次元で固定ならタプルで渡す
def modify(alist, indices, new_value):
 alist[indices[0]][indices[1]] = new_value

任意の深さに対応したいならループさせる
(エラーになる状況が増えるので用途に合わせて対応が必要)
def modify(alist, indices, new_value):
 element = alist
 for i in indices[:-1]:
  element = element[i]
 element[indices[-1]] = new_value

あとalist = [[0]*5]*2 の初期化方法は要注意
alist[0][3] = 3とすると[[0, 0, 0, 3, 0], [0, 0, 0, 3, 0]]になるから
2024/08/31(土) 18:14:58.61ID:fwQH707u0
>>785
ありがとう!固定要素数じゃない場合の例が思案に明け暮れていたとこで、助かります!
丁度さっき、そうだ受け取ったstrに応じる形で"関数側のcase match文"で
決められた格納場所に同じく受け取ったvalueを書き込もう、としていました
コマンドウィンドウを開いているか否か0or1みたいなものを
StatsクラスのStats.write("commandopen", 1)、これの第一引数をcaseでふるいにかけ書き込むべきインデックスに辿り着く感じ…(>_<)
2024/08/31(土) 18:51:32.93ID:mruaKbs00
{“commandopen”: 1}がkey/valueなら
素直にdictionaryで状態管理したほうがいいんじゃないかな
case文やインデックス変換なくせるよ
2024/08/31(土) 18:59:52.21ID:fwQH707u0
たしかに…辞書やjsonといった物の扱いに恐怖心があって無意識に避けてたかも
2024/09/01(日) 08:53:52.90ID:5+RJ54+E0
前回と今回のid一覧があって、
今回追加分のidに該当するものがなければ終了
みたいな処理をどう書こうか考えてて、
結局setの演算にしたら1行になった
setむっさ使える
2024/09/02(月) 14:46:18.35ID:V2ztMrfU0
テキストをフィルターしていて、
特定の行があったら、その前後の行も削除して出力したい

後ろも削除はiterでnext()すれば飛ばせるけど、
すでに出力しちゃったものを無かったことにするのが難しい
一旦全部バッファに溜めておくしか無いのかな
2024/09/02(月) 16:47:53.26ID:ciLmvDW/0
全部じゃなく
1行バッファして次が来たら出力する部品でいいんでは?
もちろんバッファ削除とフラッシュの機能もつける
2024/09/02(月) 17:05:31.51ID:V2ztMrfU0
削除する必要が最大1行ならいいけど、実際には2行のケースもある
2024/09/02(月) 17:13:39.22ID:ciLmvDW/0
理解力というか応用力低すぎて草
2024/09/02(月) 17:30:55.08ID:V2ztMrfU0
んー、そんな小手先で回避してたらすぐ行き詰まるよ
2024/09/02(月) 17:52:44.67ID:DywOJmSg0
1回目は削除インデックスを確保するだけで2回目のフィルタリングでそのインデックスを削除する
何行削除でも可能
2024/09/02(月) 18:08:44.35ID:V2ztMrfU0
なるほど2パスにするのか
入力はファイルなのでそれで十分だし高速だしメモリも食わない
ストリームにまで対応可能な方法は多分ない
797デフォルトの名無しさん (ワッチョイ 072a-DKuy)
垢版 |
2024/09/02(月) 18:18:02.18ID:cZu9PahF0
>>790
俺にはこの話題の sed コマンドは全く理解できないが、解るなら python に移植してみてはどうだ。
https://mevius.5ch.net/test/read.cgi/unix/1085730992/593-
2024/09/02(月) 18:18:35.06ID:0P3ClJWr0
dpでやるやつじゃね?
2024/09/02(月) 18:24:28.25ID:V2ztMrfU0
sed的にやろうとすると、ファイル全体を読み込んで検索して、というやり方と同じなので、
メモリはファイルサイズだけ食うことになる
sedはそれをストリームに対してやるのでメモリ食わない

メモリ節約するなら最低限だけ読みながら、という処理になるけど、
最低限が何行なのかは条件次第なので条件の解析までやらないといけなくて、
ツブシの効かないコードを頑張って書くことになる
2024/09/02(月) 18:39:20.59ID:ciLmvDW/0
主に最適化の理由で出力のバッファリングはPython内外で透過的に行われてるし
そこに出力遅延するio.Writer追加するだけの話
バッファはいくらでも動的に確保したらいい
小手先らしいけどそれで必要十分
2024/09/02(月) 18:49:11.43ID:R3lh7LPd0
本人がバッファリングが必要な範囲を抽象化して捉えられてないから1行とか2行とかって説明になるんだろ

最近出現頻度の高い末尾54さんはいつもこのパターン
2024/09/02(月) 18:53:10.49ID:V2ztMrfU0
前後の行としか書いてないけどな
前後n行だよ

バッファリングするのはいいとして、フラッシュのタイミングが不明だとどうしようもない
前後n行に絶対引っかからない行が定義できない
2024/09/02(月) 18:56:45.68ID:DywOJmSg0
前の全部の行が削除対象になり得ることを考えるとストリームにやるなら全部バッファに溜めるしかなさそうだ
804デフォルトの名無しさん (ワッチョイ ff7c-rxv+)
垢版 |
2024/09/03(火) 15:35:20.10ID:GbfXXZxt0
>>0790

https://ideone.com/R9UweU

前後N行消したいなら、前のN行をバッファできれば充分。1パスでいけるよ
2024/09/03(火) 21:07:40.33ID:l2RoLSBv0
N行が全行−1行になることもあるから1パスだとメモリ食ってヤダって話みたいよ

そもそもの問題認識が間違ってるよね
2024/09/03(火) 21:28:25.04ID:b8qS9knc0
今やメモリなんて膨大にあるから、1億行でも平気
そんなこと気にしないのが簡単でかつ現実的
一応気にして2パスにするのも、比較的簡単
中途半端に気にして対応すると手間がかかる上に不完全になる
807デフォルトの名無しさん (ワッチョイ 5f5c-1cCN)
垢版 |
2024/09/03(火) 22:33:39.88ID:2uJG6i7Z0
じゃあ何を悩んでたの?
よく分かんねーけど能書きの前に常識として謝辞のひとことくらい述べたらどうかね
2024/09/03(火) 22:36:18.67ID:b8qS9knc0
なんか知らんけど、勉強する気のない奴が紛れ込んでるんだよな
809デフォルトの名無しさん (ワッチョイ e768-3eZc)
垢版 |
2024/09/04(水) 10:07:28.75ID:1egc59UO0
slenium使ってWebページの巡回してますが、CSSセレクターやxpathが日によって変動する場合の対処法をご教授願えれば幸いに存じ上げマッスルマッスル。
2024/09/04(水) 13:21:36.89ID:8f/9E+Y70
フルで指定しなくても部分でもいけるので、変わらない部分を使う
2024/09/04(水) 16:46:15.23ID:8f/9E+Y70
またストリームっぽい話
デリミタ行があって、それで区切った単位で処理する
デリミタを見つけたら処理、みたいにすると、デリミタ無しで終了した場合に最後が抜ける

元データの方で最後にもデリミタを入れる
ループを抜けた後に同じ処理を追加する
デリミタ or EOF みたいな判定にする
等の対応があって、EOFがスマートそう

でもEOFの検出が大変
ファイルを1行ずつ読んでても次を読んでみないと判らないし、
iterでも例外を起こすとか、リストが対象だったらコピーしといてpopしていって空か見るとか

最後まで行ったら自動で終わる処理はとても書きやすいのに、
最後の処理の最中に最後だと判定するのが困難
2024/09/04(水) 16:53:37.40ID:mtP1OC380
日本語を見ればプログラミング適性がないのがよくわかる
2024/09/04(水) 17:15:00.32ID:u5L50CbY0
デリミタ行以外で終端になったら
追加でデリミタ行を返すイテレータを書くだけ
2024/09/04(水) 17:24:08.15ID:8f/9E+Y70
データ数nでデリミタ数n-1、という気持ち悪い状態が自然によくあるんだよな
joinで結合して、splitで分解するのと同様に、
デリミタで分解する処理を最初に入れるのが多分正解
最後のデリミタがあってもなくてもいいようにしないといけない
2024/09/04(水) 17:28:38.80ID:8f/9E+Y70
分解する処理が全く同じ問題にぶつかるんですが
816デフォルトの名無しさん (ワッチョイ 87a9-vKF2)
垢版 |
2024/09/04(水) 17:30:47.74ID:6BJD9ak60
>>810
ありがつお!フルで指定しないとエラーでます。
ifとか使ってあがいてみマッスルマッスル!
2024/09/04(水) 17:33:35.02ID:8f/9E+Y70
perlだったら、f = open(file) みたいなので取得したファイルオブジェクトに対して
eof(f) を見たら終端に達してるかどうかが判る
pythonでもf.eof() みたいなのを作っといてくれればいいのに無いというのは、
そんなプログラムは書くなという明示的な意図なんだろうな

便利なのになー
なんで駄目なんだろ
2024/09/04(水) 17:54:41.94ID:8f/9E+Y70
仕方ないからsplitのlist版を汎用で書いて、自分用ライブラリに入れとこう
これも意地悪で存在しないのか?
2024/09/04(水) 18:09:05.10ID:u5L50CbY0
more_itertools.split_ナントカ
820デフォルトの名無しさん (ワッチョイ ff7c-rxv+)
垢版 |
2024/09/04(水) 19:07:28.42ID:8eJhy0Tz0
>>0811

1行単位で読みつつ複数行単位で処理したいループのあるあるだね

Pythonならイテレータやジェネレータを使うかも
https://ideone.com/qSuDAt

なるほどジェネレータの処理が“全く同じ問題にぶつか”ってて、
この例ではそこを「ループを抜けた後に同じ処理を追加する」でやってることになるかな

まあでも、泥臭いことをここに押し付けて、メインのループがブロック単位でまわせるのがよい
だいたい、ふだん行単位でまわせるのもライブラリが泥臭いことしてるおかげだし
2024/09/04(水) 19:46:26.52ID:8f/9E+Y70
https://i.imgur.com/wMdI3xj.png
真似っこ
buf.clear() まで真似したら見事にバグる
822デフォルトの名無しさん (スプッッ Sdff-UdSI)
垢版 |
2024/09/04(水) 20:41:57.33ID:gNKcgXFOd
こういうバカに産まれなくてホントに良かったよ
CSVなんかでも最後にカンマあるとかねーとかでうんうん言うんかな
2024/09/04(水) 20:59:08.55ID:8f/9E+Y70
セパレータで区切って1行になってたら最後にはセパレータがあってほしくない
文字列を改行で区切って並べるなら、最後にも改行があって欲しい

等価なことをやってる筈なのに、区切りが改行の時だけ例外なんだよな
'\n'.join(l) + '\n'
みたいなことをやる羽目になって、それが正しいんだけど不便
2024/09/05(木) 00:04:43.15ID:J+Hr7uF60
汚れ仕事になると分かってるなら
そこだけ分離するな
825デフォルトの名無しさん (アウアウエー Sa1f-XN8b)
垢版 |
2024/09/05(木) 00:12:14.06ID:/oUqYYg3a
>>811
readerにfinalizeを用意させれば良い
826デフォルトの名無しさん (アウアウエー Sa1f-XN8b)
垢版 |
2024/09/05(木) 00:14:42.60ID:/oUqYYg3a
>>822
range(start, end) で end - 1 までになるのが納得いかないとか言い出しそうだよね
2024/09/05(木) 12:37:32.12ID:yOHjemdL0
これが汚れ仕事になってしまうのは、プログラム的な正しさと人間の正しさの感覚の齟齬があるんだろうな

pascalで行末にセミコロンを付ける
でもこれはセパレータなので、最後の行にも付けるとエラーにされる
ふざけんなということで、Cではセパレータではなく行末記号になった
今度は最後にも付けないとエラー

a = [
 aaa,
 bbb,
 ccc,
]
最後のコンマは要らないけど、あった方が書きやすいし、勝手にヌル要素が追加されたりもしない
無視されるだけ

a = func(a, b, c,)
これも許容される
でも気持ち悪いから、多分こうは書かない
最後の余分なセパレータに対する統一的な方針は無い
828デフォルトの名無しさん (ワッチョイ ff7c-rxv+)
垢版 |
2024/09/05(木) 13:31:44.17ID:Uxm0hRsL0
>>0823
「最後にもセパレータがある」は矛盾してるよ
最後のセパレータの次には空の要素があるとみなすべき

それぞれの要素の後に記号をつける場合その記号は「ターミネータ」
記号は改行だけとは限らず「foo;bar;baz;」とかでもよい

ターミネータ式では「foo;bar;baz」は厳密には ["foo", "bar"] にゴミがついてるとみなすけど、最後の要素とみなすことも多い。それでも「foo;bar;」で最後に空の要素があるとはみなさないのでセパレータとは違う

splitやjoinはセパレータ式を扱うものだから、ターミネータ式の分割と結合に使うとき小細工が必要なのは仕方ない

>>0823 の「等価な筈なのに〜」だの「セパレータが改行のときだけ」だのも区別がついてない
「ターミネータの場合は」なの

# セパレータをカンマからタブに
csv = "foo,bar,baz"
list = csv.split(",")
tsv = "\t".join(list)

# ターミネータをセミコロンから改行に
stv = "foo;bar;baz;"
list = stv.split(";")[:-1] # 小細工
ltv = "\n".join(ltv) + "\n" # 小細工
2024/09/05(木) 14:35:40.58ID:J+Hr7uF60
セパレータなのか終端記号なのかというところに
統一的な見解を作るのは無理だろう
2024/09/05(木) 15:30:26.64ID:gQmEldZ20
>>820
yieldしたbufをclearしたらアカンやろ

>>821
偉そうなこと書いててもコードはこのレベルなのかよw
勘弁してくれよ

>>828
Pythonのoptional trailing commaとかは
ターミネータではなくセパレータだよ
文法としてそれが規定されてて
オプショナルセパレータを処理する仕組みがあるかどうか
831デフォルトの名無しさん (アウアウエー Sa1f-XN8b)
垢版 |
2024/09/05(木) 23:28:48.64ID:/+8Jbbe1a
これも終端がいい加減な例の一つ
https://5ch.net/
https://5ch.net
832デフォルトの名無しさん (ワッチョイ 5f5c-1cCN)
垢版 |
2024/09/05(木) 23:37:18.89ID:mXpnohHX0
それ終端なのかよURIの記法ってそうだっけパスの頭じゃねーの?
2024/09/05(木) 23:37:57.01ID:yOHjemdL0
urlもそうだし、パスを分解する時も、なんだこの不規則はと悩む
C:/
は/が無いと意味不明になる
でも
C:/bin/
C:/bin
はどっちもあり
ファイルとディレクトリを同列に扱いたいというスタンスからすると、末尾の/はあって欲しくない
でもルートの場合は必要
どっちかに統一しないと、
f'{path}/{filename}'
みたいに書けない
仕方ないので、あってもなくてもいいけど、あったら無視する
という汚れ仕事吸収層に任せることに
2024/09/06(金) 00:52:19.42ID:0I3gstue0
urlといいうか、*nixはスラッシュ止が本来なんだっけ?

それにしてもファイルパスは意外と厄介
rsyncみたいに、スラッシュがあるかないかで振る舞いが全く異なるものもあるし
2024/09/06(金) 00:54:13.81ID:R0hAYngZ0
最初の/は、ルートではなく絶対パスの意味
長さゼロの文字列はカレントディレクトリかなぁ

ドライブ指定のみ
C:
ドライブ指定+絶対パス指定
C:/
ドライブ指定+相対パス指定
C:.

C:/Users>cd /d D:/
D:/>cd /d C:.///.//yamada///Music//
C:/Users/yamada/Music>
となるし
836デフォルトの名無しさん (オイコラミネオ MMcb-rxv+)
垢版 |
2024/09/06(金) 08:29:25.15ID:FtlRyc/CM
>>830
820 と 828 にツッコミありがと そのとおりだね

いずれにせよ811や823の参考になればと思ったけれど
833までみるとプログラミングやPythonの勉強よりは別のことをしたいみたいだ
2024/09/06(金) 12:59:23.01ID:5V/vqJZed
もうメンテナンスしかやることねえ・・
2024/09/06(金) 13:05:03.70ID:8mJhneNM0
>>837

うん?

まぁ、そんなもんだ
839デフォルトの名無しさん (ワッチョイ 278b-k4Tl)
垢版 |
2024/09/06(金) 15:15:22.20ID:kb80ato/0
ほぼ知識ゼロの状態からPythonでアプリを作るのは無謀?
2024/09/06(金) 16:28:40.66ID:b7WWclpu0
知識ゼロにも色々あってな
プログラミング自体やったことがないのか
Pythonでやったことがないだけなのか
2024/09/06(金) 16:35:05.78ID:e4ITOx4xd
PC触ったことないとか
2024/09/06(金) 16:43:13.12ID:QtgCCsYf0
>>839

できる


どの書籍、選び方次第
843デフォルトの名無しさん (ワッチョイ 278b-k4Tl)
垢版 |
2024/09/06(金) 16:43:15.17ID:kb80ato/0
プログラミングの知識はほぼゼロ
unreal engineのC++に何が書いてあるのかわからない
コードの書き方の知識もほぼゼロ
844デフォルトの名無しさん (ワッチョイ 278b-k4Tl)
垢版 |
2024/09/06(金) 16:44:13.37ID:kb80ato/0
>>842
良い書籍や動画を教えてくれると助かる
845デフォルトの名無しさん (ワッチョイ 278b-k4Tl)
垢版 |
2024/09/06(金) 16:47:34.80ID:kb80ato/0
組みたいプログラムはオレの知る限り、おそらく一般には採用されてないけど、そんなに複雑なものでもないと思う

なので、信頼してる人しか組みたいプログラムは教えたくない
2024/09/06(金) 16:52:45.07ID:e4ITOx4xd
>>844
>>736
847デフォルトの名無しさん (ワッチョイ 278b-k4Tl)
垢版 |
2024/09/06(金) 16:56:57.72ID:kb80ato/0
>>846
ありがとう
登録した!
書籍もあると助かります
848デフォルトの名無しさん (ワッチョイ 278b-k4Tl)
垢版 |
2024/09/06(金) 16:58:56.36ID:kb80ato/0
>>846
どのリストから見れば良い?w
849デフォルトの名無しさん (ワッチョイ 278b-k4Tl)
垢版 |
2024/09/06(金) 17:01:38.70ID:kb80ato/0
UE使う時にvisual studio入れた
サッパリだったけど…
2024/09/06(金) 17:06:47.23ID:e4ITOx4xd
>>848
取り敢えずPython速習っていう2時間半の動画観て雰囲気を掴んでみては
その前にシステムの構築をしておいたほうがいいかも
851デフォルトの名無しさん (ワッチョイ 2728-k4Tl)
垢版 |
2024/09/06(金) 17:12:45.49ID:kb80ato/0
>>850
Python落として、visual studioとあと何が必要?
852デフォルトの名無しさん (ワッチョイ 2728-k4Tl)
垢版 |
2024/09/06(金) 17:15:47.84ID:kb80ato/0
↑で紹介してくれた人、書籍出してるんだな
それも買います
2024/09/06(金) 18:29:38.57ID:B348q7Ai0
Pythonとvscodeがあればその動画の内容くらいなら十分できるだろう
2024/09/06(金) 18:30:39.41ID:060imtVw0
サプー3D前の方が好き
2024/09/06(金) 19:19:30.06ID:jTHLjygZ0
>>854
本の表紙がかわいい
2024/09/06(金) 19:48:13.50ID:PgSZcrVr0
>>844
自分が勉強した順。
PaizaというサイトでPython3に関してはある程度の部分まで無料で学べる。
講座は動画、各項目毎に小テスト。
とりあえずは環境を整えなくてもオンライン上で実行環境が用意されている。
自分はそこで最低限の文法を勉強してから他の動画やネット上のソースを見たりした。
見たソースは、最初のうちは極力ソース内のあちこちに細かく「〇〇する」とか」コメントがあるもの。
そういうものを見て「あー、この部分数行でファイルを読み込むんだ」とか、
「こうやって流れを繋げていくんだ」ってのを理解した。
2024/09/06(金) 21:20:10.00ID:060imtVw0
>>855
表紙かわいい
858デフォルトの名無しさん (ワッチョイ 277a-k4Tl)
垢版 |
2024/09/06(金) 22:41:41.57ID:kb80ato/0
みんなありがとう
色々実践してみます
2024/09/07(土) 09:57:52.65ID:wncxx9TU0
>>776を作ってみた
取得した結果を入れておく場所と、見つかったかどうかのフラグと、セマフォをglobalで共有する
フラグは本当は呼び出し側で処理したかったけど、result()を得ようとしたら終了待ちするので意味がない
履歴を記録しておくファイルもあって、その都度開いて追記して閉じる
他のスレッドと衝突しないかどうかは運次第
2024/09/07(土) 10:13:06.85ID:frLS0o200
スレッドじゃなく別プロセスでやればええんでは
ライブラリが行うプールの管理だけで済む
2024/09/07(土) 11:35:00.37ID:vd/lqcQo0
それな
おれも普通にプロファイル作ってるわ
ただ1プロファイルにつきたしか600MBくらい使ったけど
2024/09/07(土) 12:27:26.22ID:wncxx9TU0
プロセスを別にするのは重い計算とかでCPUコアを分けたい時で、
ネットワークの待ち時間の間に他のことをしたいだけなのでスレッドでいい
2024/09/07(土) 13:58:10.84ID:j/xwjrvk0
>>859
そんなことしなくてもselenium grid使えば全部自動でやってくれるぞ
自前実装したいのなら勝手にやればいいけど
2024/09/07(土) 16:04:12.37ID:frLS0o200
>>862
マイコンやキオスク端末ならわかるけど
デスクトップOSなんてプロセス無数に動いてる
コンテキスト切り替えが多発したりリソース気にするんじゃなけれりゃ
たいしてスレッドにこだわる意味はない
Chromeもプログラム構成優先してがんがんプロセス生成してる
2024/09/07(土) 16:47:27.15ID:wncxx9TU0
別に拘りは無い
どっちでも同じ
コード上もThreadPoolExecutorをProcessPoolExecutorと書き換えるだけ

実際の中身の処理はかなり変わるけど、どっちにしろ待ち時間が大半なので何も変わらない
processである必要が無いのにprocessにしてあると、なんで???と思われるだけ
2024/09/07(土) 18:09:51.60ID:Zt7rxXUV0
seleniumは並行に大量のページにアクセスするのには向かない
I/O待ちでもブロッキングするしかなくセッション単位で別のブラウザーインスタンスが必要だからリソース馬鹿喰い

今は代替ツールがあるので新しく書くコードならそっちを使う
2024/09/07(土) 18:49:21.06ID:wncxx9TU0
seleniumは多重処理関係なく重いというか大げさだけどね
本物のブラウザそのものだし

互換品や簡易版で動くようなサイトなら、最初からrequestsで済ませるけど、
本物じゃないと動作が怪しいなら本物を使うしかない
2024/09/07(土) 19:00:23.61ID:zesuODdH0
はやさなら
パンダ<美汁<セレン
2024/09/07(土) 19:01:17.02ID:zesuODdH0
間違った反対
2024/09/07(土) 19:14:37.88ID:wncxx9TU0
重いだけで済むんだから楽なもん
perlでmechanizeとか紹介されてて、なんか便利そうだと思って使ってみても、
便利でも何でもない
スクリプトとかあったら人間が解析しないといけない

selenium使ってさえ、取得したpage_sourceがスクリプトの塊で、
謎に分割されてたり、jsonっぽいけどjsonじゃなかったり、
スクレイピング避けのいたちごっこが続いている
2024/09/07(土) 19:18:50.68ID:zesuODdH0
デスクトップ上の座標でクリックしてけばいい
2024/09/07(土) 21:26:28.97ID:o9ae9Qt50
seleniumでウェブの操作を行うプログラムを持っているのですが、おそらくグーグルchromeのアップデートが原因で動かなくなりました
実行後、何も処理せずに落ちてしまうのでエラー内容すら見られません
chromeのバージョンは128.0.6613.120
chromeドライバーのバージョンは128.0.6613.119の32bitです
ドライバーを旧バージョンから最新バージョンに上書きするだけではダメなんですかね?
2024/09/07(土) 21:29:26.91ID:wncxx9TU0
実際に使ってるブラウザとseleniumのドライバを合わせないといけない
みたいな努力は割と前に不要になった
2024/09/07(土) 22:06:17.62ID:o9ae9Qt50
エラーのスクショが撮れました
何が悪いのか分かる方いたらご教示お願いします
https://i.imgur.com/Jqpd9a5.png
2024/09/07(土) 22:08:24.32ID:wncxx9TU0
from selenium import webdriver
with webdriver.Chrome() as driver:
みたいに書く
2024/09/07(土) 22:22:51.02ID:o9ae9Qt50
>>875
その2行目を付け足したら速攻で落ちるようになりました…
webdriver.Chrome()の()の中に、
エラー画像の4行目のservice=ChromeServiceなんたらかんたらをいれるのかな?とよく分からないながらやってみても変わらず
2024/09/07(土) 22:28:17.17ID:2iOJWTB70
>>867
>>866に書いてること1ミリも理解してなくて草

普通にブラウザ使ってれば
あるサイトのリクエスト完了を待ってる間に
違うタブで別サイトにリクエストを出すことができることくらいはわかるよね?

seleniumではそれが出来ない
同じことを達成したければ一つ一つ別プロファイル作って
専用のブラウザインスタンスを立ち上げないといけない

seleniumだけでなくrequestsもmechanizeも全部非同期に対応してないので
量をさばく必要がある場合に使う道具ではなくなってる
2024/09/07(土) 22:39:22.70ID:o9ae9Qt50
>>872のソースはこれです
コードは極力削っています
https://i.imgur.com/kgfDXeE.png
2024/09/07(土) 23:50:08.25ID:57KCZCA60
>>878
同じバージョンだけど動いてyahoo見れるな…
2024/09/08(日) 03:12:08.34ID:5mVESwIRr
>>879
マジですか…
数か月くらい動かしていない期間があって、久しぶりに昨日動かそうとしたらエラーが出て…
WinError 193の対処法として紹介されていた、
service = ChromeService(ChromeDriverManager().install())によって作成されるChrome Driverのキャッシュを消すというものも効果なし
それ以外のエラーはよく分からず
2024/09/08(日) 09:00:49.72ID:6sSIgrGd0
>>880
その記述って自動で適切なChromeDriverをダウンしてきてくれるみたいだけど、出てるエラーはChromeDriverと合ってないから実行できないよ、っていう事らしい。
自動で上手くいかずキャッシュを消してもダメなら自動を止めて、ChromeDriverの各バージョンを片っ端から手動でダウンして試してエラーの出ないchromedriver.exeをどこかのフォルダに置いといて直接指定すれば良いのでは?と思うけどそれじゃダメなの?
2024/09/08(日) 11:55:48.02ID:r0meOORq0
>>874
webdriver_managerのバージョンも最新に
2024/09/08(日) 16:48:39.72ID:FaHdpY160
それね
俺も先月業務アプリが動かなくて困った記憶あるわ
結論から言うとwebdriver_managerはもういらない
selenium単独で自動的に最新のdriverを取得することができるみたい

```
from selenium import webdriver

options = webdriver.ChromeOptions()
'''オプションがあれば追加'''
options.add_argument('--start-maximized')

driver = webdriver.Chrome(options=options)

try:
driver.get("http://google.co.jp";)

except Exception as e:
print(e)

finally:
driver.quit()
```
2024/09/08(日) 16:55:04.68ID:FaHdpY160
ちなみにSeleniumバージョン4.6以上が必要らしいので注意ね

ここを参考にするといいよ
https://yuki.world/python-selenium-chromedriver-auto-update/
885デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 18:21:21.76ID:ZvPXoPz+0
>>839
で色々とアドバイスもらった者です

サプーさんの書籍も購入したんだけど,ある程度、初心者を抜けるか抜けないかの人向けだね、これ

ほんとにプログラミングについては知識ゼロなので、動画以外でこの前段階の超入門書みたいなのでオススメあれば教えていただきたい
2024/09/08(日) 18:31:43.56ID:zGDX69KT0
サプー動画の最初の方は、これ以上ないくらい初心者向けだろう
さすがに見てないので判り易いかどうかは知らない
887デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 18:36:54.21ID:ZvPXoPz+0
>>886
とりあえず2時間のやつで雰囲気掴んだ後に、どれを見ればいいのかわかんないのよね…

あと書籍っていうある程度まとめて基礎の基礎何詰まってるモノが欲しいんだ
いつでも読めるように
888デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 18:40:19.95ID:ZvPXoPz+0
プログラムはできるだけシンプルで、うまく動かなかったり不具合出た時に、他の人でも修正位置がわかりやすく、後から機能を追加しやすいフレキシブルなモノが良いってのはなんとなくわかるのよ…

まず、それを書く知識が全くと言っていいほどないんだよね🙃
889デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 18:42:15.28ID:ZvPXoPz+0
なので、どの動画が自分の欲しい情報解説してあるモノなのかの判断もつかない状態です
890デフォルトの名無しさん (ワッチョイ 8aa5-f0zi)
垢版 |
2024/09/08(日) 18:45:56.99ID:nFVqfsuv0
>>889
さっさと実務をやった方がいいです。
ダサいコードが仕様変更に耐えられるコードです。
891デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 18:47:04.49ID:ZvPXoPz+0
>>890
とりあえず組みたいプログラムに取り掛かれって事?
2024/09/08(日) 18:47:11.49ID:zGDX69KT0
https://www.youtube.com/watch?v=tCMl1AWfhQQ
2時間てこれか
いいのあるじゃん

これでオリエンテーションは終わりなので、あとは好きなことをやればいい
893デフォルトの名無しさん (ワッチョイ 8aa5-f0zi)
垢版 |
2024/09/08(日) 18:47:19.73ID:nFVqfsuv0
書籍を書いているのはプロじゃないので、モジュールの切り出しすらも説明していない。
894デフォルトの名無しさん (ワッチョイ 8aa5-f0zi)
垢版 |
2024/09/08(日) 18:48:20.74ID:nFVqfsuv0
>>891
自分自身が使うものを作る。あとから変えようとしたときにこう作るんじゃなかったと気づく。
895デフォルトの名無しさん (ワッチョイ 8aa5-f0zi)
垢版 |
2024/09/08(日) 18:50:05.63ID:nFVqfsuv0
実務の意味がわからないというのは学生なのかな?
896デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 18:50:58.16ID:ZvPXoPz+0
>>895
プログラミングの用語とかも知らんのです
2024/09/08(日) 18:53:49.27ID:SEDRCJr/0
全くのプログラミング初心者なら
「プログラムはなぜ動くのか」
辺りかな
898デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 18:57:59.46ID:ZvPXoPz+0
>>892
これは↑でオススメしてもらった
これを繰り返し見つつ、同時進行していく感じかー

ありがとう
実践しながらやってみるわ

最初の方から結構「???」ってなる部分も多いんだんだけどもw
899デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 19:02:39.95ID:ZvPXoPz+0
>>893
なんか良い、こんなオレでも比較的理解できる良い書籍あります?
2024/09/08(日) 19:24:36.64ID:6sSIgrGd0
>>889
>どの動画が自分の欲しい情報解説してあるモノなのかの判断もつかない状態

>>856読んで貰えてないんだね。
Paizaってサイトではそういう人でも分かるように順序立てて基本的な文法を動画で解説してくれてる。
他の言語の場合は冒頭のみであとは有料だけど、Pathon3だけはある程度の部分まで無料公開してくれてる。
ここで無料公開分を全部終了できれば初心者向けの動画とか解説サイトとかもそれなりに理解できるようになると思う。
お金掛からないしとりあえずやってみたら?
901デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 19:26:21.18ID:ZvPXoPz+0
>>900
呼んだっす!
コピペして、学ぶ順序のリストにさせてもらった
902デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 19:30:52.42ID:ZvPXoPz+0
助言で具体的なものは全て書き出したり、登録、購入検討してる

ただ昨日の今日で、サプーさんの書籍も今目を通したとこなので、リストの優先順位を判断できてなくて
2024/09/08(日) 19:31:24.09ID:SLqL4HNM0
>>881,882,883
ありがとうございます!
時間あるときにチャレンジしてみます!
904デフォルトの名無しさん (ワッチョイ 911d-sF61)
垢版 |
2024/09/08(日) 19:38:08.04ID:ZvPXoPz+0
>>900
サプーさんの2時間の動画見ても、結構「???」なとこ多くて、書籍はまだ理解できるレベルじゃないものだったので、Paizaってサイトに挑戦してみます

詳しくレスしてくれてありがとう
2024/09/08(日) 22:39:01.10ID:zGDX69KT0
何か裏で処理させてて、完了したらポップアップで知らせたい
それだけなら方法はいくらでもあるけど、
よし判ったとEnter一発で閉じたい
でもポップアップにフォーカスが無いので、いろいろ面倒くさい
ポップアップの位置もど真ん中に出ると邪魔なので端に寄せたい
でも tkinter でどう頑張ってもそんなことできない
2024/09/08(日) 23:07:02.96ID:FaHdpY160
ずっと画面見てる前提なら数秒したら消す処理すりゃいいんじゃない?
2024/09/08(日) 23:08:52.84ID:zGDX69KT0
そんな前提は無い
2024/09/08(日) 23:17:36.18ID:zRsEDrHt0
toastとかOS標準のnotificationを使えばいい
キーボードショートカットも用意されてる
2024/09/08(日) 23:26:26.06ID:zGDX69KT0
win11toastもinputがあってさえフォーカスは来てないな
2024/09/08(日) 23:46:26.14ID:zGDX69KT0
結局、powershellのPopupをsubprocess.runで呼び出すのがベスト
それで可能なのは最初から判ってたけども

os寄りの処理って互換性とか無視してosべったりで作った方が幸せになれる
2024/09/09(月) 05:00:01.20ID:i0341ZB+0
そこはWin32APIを呼び出したほうが親和性が高いだろう
windowsアプリと同じ見てくれ、ふるまいになるし、
デフォルトボタンやフォーカスは確実に有効にできる
2024/09/09(月) 14:54:53.83ID:iWr3h1fB0
中央だと邪魔だから端に表示するような種類のポップアップで強制的にフォーカス奪っだらダメだろ
個人専用なら好きにすればいいが他人に使わせるアプリでは絶対やってはいけないパターン
2024/09/09(月) 15:25:57.69ID:M6TEicyP0
ポップアップの位置を変えるようなことは、Win32 API使っても無理な気がする
標準に似せたものを自前で作るしか
914デフォルトの名無しさん (ワッチョイ 8aa5-f0zi)
垢版 |
2024/09/09(月) 17:58:31.91ID:XsanjNXu0
WindowsアプリをPythonで作るな!
2024/09/09(月) 19:59:54.08ID:WqKgF9CS0
カラスの勝手でしょぉ♪
916デフォルトの名無しさん (アウアウエー Sa52-t/33)
垢版 |
2024/09/09(月) 21:10:41.86ID:6U3TxPzTa
ただでさえPOPUPはTOPMOSTにしない方が良いのに
TOPMOSTにした上でENTERで反応するPOPUPなんて百害あって一理無しよ
2024/09/09(月) 21:29:34.03ID:M6TEicyP0
謎にエスパーされてるけど、topmostが目下の課題
powershellからWScript.ShellのPopupを呼び出すと、
フォーカスは奪ってくれるけどtopmostではない
全画面で動画見てると音はするけど視覚的には気付かない
フォーカスがあってかつtopmostというのがやりたい処理なのに
2024/09/09(月) 21:33:40.24ID:+To1Amul0
表示はOSの通知にして
EnterはUIにフォーカスさせるのではなくキー入力をジャックする
2024/09/09(月) 21:40:36.79ID:wEgLJ8040
きっとそのうちEnterで消すのがうざくなる…
2024/09/09(月) 22:59:51.52ID:i0341ZB+0
>>917
"ctypes.windll.user32.MessageBoxW"で
MB Typeに"0x40000"を与えれば"MB_TOPMOST"になる

>>914
普段はコンソールを立ち上げずにこっそり実行
エラーとか、対話が必要なときだけポップアップが出るようにするのには有用なんだよ
no_consoleモード+ポップアップはそんな目的にはぴったりだし
2024/09/09(月) 23:24:20.06ID:M6TEicyP0
0x40000足せばいいだけだったのか
もう殆ど手が届いてたんだな
262144でかすぎひん
2024/09/09(月) 23:50:28.10ID:M6TEicyP0
bit毎に意味があるんじゃなくて、nibble毎に割り振ってるんだな
不思議な設計
2024/09/10(火) 09:46:51.62ID:V/5rRVOx0
bit毎に意味あるだろ
bit fieldでググってこい
924デフォルトの名無しさん (アウアウエー Sa52-t/33)
垢版 |
2024/09/10(火) 13:11:16.09ID:KGjTz1X0a
+で良いと思ってる人間と|だろうなと思ってる人間は雲泥の差がある
2024/09/10(火) 21:10:56.22ID:sQRxeMB30
>もう殆ど手が届いてたんだな
これジョークじゃなきゃキッツいな
926デフォルトの名無しさん (ワッチョイ aaae-voeu)
垢版 |
2024/09/13(金) 14:57:50.02ID:HD5QYSk40
OpenAIが複雑な推論能力をもつAIモデル「OpenAI o1」と「OpenAI o1-mini」を発表、プログラミングや数学で高い能力を発揮
https://gigazine.net/news/20240913-openai-o1/
2024/09/13(金) 15:23:01.98ID:Ri3tNWi30
>>926

すごいな
天才プログラマーか
2024/09/13(金) 21:29:13.87ID:jtrlU5c10
何かあった時に失われるのが嫌なので、
ログとか出力する時に1行毎にopenして書いて閉じてるけど、
flush=True を付けるのと違いあるんだろうか
2024/09/13(金) 21:34:14.83ID:jtrlU5c10
違いあるんだろうかシリーズ
リストをソートしたいと思った時、ふつーに
l = sorted(l)
と書いたけど、そういえば l.sort() という方法もあった
気持ち悪いので本能的に避けたいけど、わざわざ用意されてるメリットって何だろう
計算コストは同じな気がする
2024/09/13(金) 22:31:20.25ID:C+esSXth0
同じじゃない
くだすれ行け
931デフォルトの名無しさん (ワッチョイ f9bf-BHET)
垢版 |
2024/09/13(金) 22:35:10.99ID:3+j4DpP00
>>929
一般的には追加のメモリ確保をしない l.sort() の方が効率的
l を再代入してるから分かりにくいけど、ソート結果は元の l とは別の領域に作られてる
これは、k = sorted(l) と書いた時にソート前後の両方のリストがオブジェクトとして存在することからも分かると思う
(l = sorted(l) は、追加のリストを作ったあとに l の参照先を新しいものに置き換えてる)

l.sort() だと元々あった l の領域内でソートされるので、追加のメモリ確保がいらない

要素数が小さいと気になることは無いと思うけど、例えば要素が10万個とかある場合だとだいぶ差が出ると思う
2024/09/13(金) 23:01:27.70ID:jtrlU5c10
メモリ確保するのってそんなに重い処理なの?
933デフォルトの名無しさん (ワッチョイ f9bf-BHET)
垢版 |
2024/09/13(金) 23:50:13.06ID:3+j4DpP00
>>932
一般的には重い処理
とはいっても、小さな量だと問題にならない
例えば画像処理の分野で、HDや4Kサイズの画像を1000枚処理したいといった話だと、メモリを毎回確保するか一度だけ確保したものを使い回すかで処理時間はだいぶ変わる (体感できるくらいに)
2024/09/13(金) 23:57:27.00ID:jtrlU5c10
なるほどー
Cの時点でmallocが具体的に何してるか知らんしな
既に連続した空き容量があって割り当てるだけなら一瞬だろうけど、
いろいろ地上げしたり大変なんだろう
2024/09/14(土) 00:15:53.13ID:ed1VLorT0
まとまった容量ならsbrk()使えって言われなかった?
2024/09/14(土) 00:43:58.26ID:uwwiah/a0
メモリ確保はO(n)でソートは下手したらO(n^2)だから、
nが大きいほどトータル処理時間に占めるメモリ確保の割合はむしろ小さくなるのでは
2024/09/14(土) 02:05:41.53ID:xMffrK+40
>>936
その2つのnは全く別のものだろ
アホか
2024/09/14(土) 06:27:04.06ID:uwwiah/a0
nが小さい場合:
メモリ確保の比率は大きいけどどうせ一瞬だから気にしない
nが大きい場合:
メモリ確保にも時間かかるけど、ソート時間が圧倒的だから気にしない

結局、気分の問題だけど、
破壊的な操作が嫌とか言ったらappend()とかできないし、
ミュータブルはそういうものと思うしか
939デフォルトの名無しさん (ワッチョイ f99f-BHET)
垢版 |
2024/09/14(土) 07:44:59.11ID:c0KErmyP0
ソートのコストとメモリ確保のコストは別々にかかるものだし、減らせるなら減らした方が良いと思う
自分のプログラムが扱うデータが小さくてsortedでもほぼ変わらないなら、こちらでも良い
自分も書き方自体は sorted の方が好きだし小さいプログラムならこちらを使ってるけど、そこは好みの問題なのでお好みで
940デフォルトの名無しさん (アウアウエー Sa52-t/33)
垢版 |
2024/09/14(土) 13:33:03.30ID:o3f0Ddoea
l.sort() はみみっちい領域でやりくりする分アルゴリズムは遅くなりそう
l = sorted(l) あるいは k = sorted(l) が富豪的で結果的に速い可能性はある
2024/09/14(土) 14:16:06.35ID:tQni2TQM0
メモリ使いまくりはキャッシュ効率下がるから
一律に富豪が強いとは限らない
使うしかない時は強いけど
2024/09/14(土) 14:50:34.43ID:aiF3uBwH0
>>940
可能性無いよ
sorted()は内部でlist.sort()の実装を呼び出してる

ざっくり言えば
new_list = list(original_list)
new_list.sort()
return new_list
2024/09/14(土) 16:15:00.42ID:uwwiah/a0
for item in sorted(l):
とやるよりも
l.sort()
for item in l:
の方が速い、みたいな話

明示的にしろ暗黙にしろ、オブジェクトのコピーにいちいち気を使いたくない
コピーするだけで時間がかかるようなオブジェクトになりそうなら、
最初からそうならない実装にする
2024/09/14(土) 19:29:07.00ID:WN+ppFgMr
seleniumのxpathについて質問です
5chの書き込み欄のxpathを確認し、
driver.find_element(By.XPATH, '//*[@id="js-postform_message"]').click()
と書いたのですが、プログラムを実行するとxpathが存在しないパターンの動作をしてしまいます
ブラウザでF12キーを押し、書き込み欄をクリックしてxpathをコピーするというよくある方法を使っているのですが、これではダメなんですかね?
2024/09/14(土) 19:38:44.99ID:uwwiah/a0
driver.page_source を保存しておいて解析する
2024/09/14(土) 19:50:56.07ID:uwwiah/a0
書き込みボタンは
//*[@id="js-postform_submit"]
で、
//*[@id="js-postform_message"]
は書き込み欄なので、clickではなくsend_keys
2024/09/14(土) 20:01:37.67ID:reS5hF+Mr
ありがとうございます
send_keysは別の行にあります
一応clickの部分は行ごと消しましたがやはりダメですね…
2024/09/14(土) 20:51:28.72ID:reS5hF+Mr
エラーをちゃんと見られるようにしたら、
name 'By' is not defined
と出ました
また要素関係の書き方が変わったんですかね?
以前は上記の
driver.find_element(By.XPATH, '//*[@id="js-postform_message"]')
という書き方で動いていたのですが…
書き方変更などの情報はどこで入手するのか…
2024/09/14(土) 20:56:59.72ID:hpW9Sln40
from selenium.webdriver.common.by import By
2024/09/14(土) 20:58:25.69ID:reS5hF+Mr
>>949
ありがとうございます!解決しました!
それをコメントアウトしてしまっていました…
2024/09/16(月) 15:32:29.19ID:JFhhEPMwd
pandasやべえな
マジで融通効かねえ
おなえらよくこんなもん使ってるな
2024/09/16(月) 15:33:30.66ID:JFhhEPMwd
pandasに持っていくのは最終工程だな
2024/09/16(月) 15:45:45.85ID:5ZHFYrcP0
df.loc('name')
じゃなくて
df.loc['name']
なのが中身どうなってんのと思う

これはプロパティだからと言われてそんなもんかと思ってたけど、
別に角括弧はプロパティの特徴じゃないし
2024/09/16(月) 16:18:34.31ID:64X1rAF60
df.locが返すインスタンスに__getitem__が定義されてる
955デフォルトの名無しさん (ワッチョイ 57b4-18DD)
垢版 |
2024/09/16(月) 17:26:32.35ID:oHCpo/jD0
>>951
そう?
融通効かない処理は普通にリストとかに変換したり、iterrowsしたりすれば大体できて、
95%のやりたいことのほとんどはpandasで用意されてるメソッド・関数でできる気がするけど
2024/09/16(月) 18:17:47.48ID:qB1csSl90
pandas使う職業って何?
バックエンドエンジニアとか?
2024/09/16(月) 18:46:53.38ID:7NWwbbi+0
学生です
2024/09/16(月) 19:14:36.94ID:sHL0iTWh0
かぐる
とかデータサイエンス
2024/09/16(月) 19:40:30.88ID:5ZHFYrcP0
データ渡すと加工して文字列にしてくれる関数名
make, create, generate どれがいいだろう
2024/09/16(月) 19:52:09.23ID:7NWwbbi+0
それら候補でいうならどれでもよくって
どういう文字列を生成するか説明できる修飾が大事かな
2024/09/17(火) 09:30:50.73ID:mIyBA525d
同意
むしろ俺なら動詞なしで「どういった文字列か」を表す名詞だけにしたい
962デフォルトの名無しさん (アウアウエー Sadf-N1Zj)
垢版 |
2024/09/17(火) 10:19:17.42ID:TMGdiCOOa
>>959
convert
963デフォルトの名無しさん (アウアウエー Sadf-N1Zj)
垢版 |
2024/09/17(火) 10:20:30.50ID:TMGdiCOOa
>>951
Pandasは行指向じゃなくて列指向だと判ればあとは簡単
964デフォルトの名無しさん (アウアウエー Sadf-N1Zj)
垢版 |
2024/09/17(火) 10:23:43.89ID:TMGdiCOOa
>>943
>明示的にしろ暗黙にしろ、オブジェクトのコピーにいちいち気を使いたくない
>コピーするだけで時間がかかるようなオブジェクトになりそうなら、
>最初からそうならない実装にする

まあこれは真実で
それならオブジェクトを保持するためのオブジェクトと
ソートするためだけのインデックスを分けるかな
2024/09/17(火) 10:55:41.47ID:rwC9vNLN0
pandasはもう古いよ
polarsがついにv1公開されたからそれに移行した
loc["name"]みたいなのも消えてる
というよりインデックスというゴミが消えてる
966デフォルトの名無しさん (ワッチョイ ff32-uXkv)
垢版 |
2024/09/17(火) 10:56:23.24ID:bvtQXCJ00
複数のエクセルファイルから特定列のデータを抜き出して
新たにエクセルファイルにまとめて書き出すということをしたのですが、
複数ファイルには重複する行が含まれていて、
下記の2つを試したのですがどちらも欠損データが生じました。

1.listに一旦全部入れて、最終的にsetに一旦変換してlistに戻す
2.1行ごとに最終的なリストに含まれていない要素をチェックしながら追加

データは5列で最終的に重複処理したもので300行程度、
重複処理前でも2000行余りぐらいのデータです。
最終的にpandasで全部一旦追加した後df.drop_duplicates()にて処理して問題なく処理されたのですが
下記の方法で欠損することとかあり得るのでしょうか?
2024/09/17(火) 12:11:47.72ID:rwC9vNLN0
>>959
data2str
2024/09/17(火) 12:16:27.92ID:rwC9vNLN0
>>966
各列をそれぞれlistにしてsetにしたのか?
それだと各列ごとに重複削除するから行レベルでは重複してないものも消えそうだが
969デフォルトの名無しさん (ワッチョイ ff32-uXkv)
垢版 |
2024/09/17(火) 13:30:30.55ID:bvtQXCJ00
>>968
1,2とも各行””.joiin(list)してから処理しています。
2024/09/17(火) 14:23:18.11ID:5SGUmRCR0
>>962
処理内容はconvertだけど、目的語が元データになってしまう
convert_to_newdata
にしないと、
convert_newdata
だと絶対間違う
2024/09/17(火) 14:53:19.06ID:ifJb33l00
>>969
["1", "", "2", "", "3"]と["1", "2", "3", "", ""]は重複?
とりあえずtuple(list)してから処理してみれば?
2024/09/17(火) 14:58:45.05ID:ifJb33l00
>>967
こういう命名をするとよくわかるように「データ渡すと加工して文字列にしてくれる関数名」というふわっとした問題設定がそもそも間違ってる可能性が高い
2024/09/17(火) 15:55:41.11ID:bvtQXCJ00
>>971
基本空白は入っていないので["1", "2", “3”]の形式になりますが
元がexcelなのでデータを見ると何かが混じっている可能性はありますね
少し余裕が出たら検証してみます
2024/09/17(火) 16:40:41.16ID:5SGUmRCR0
人間用excelを読み込むと全然ちゃんとしてないので、
全セルを配列に読み込んで、文字列検索でタイトル行を探して、
データ範囲らしき部分を割り出して、それでもエラーは出るのでいろんなケースに対応して、
みたいなひたすら泥臭いコードになる
取り消し線で削除するのやめて
975デフォルトの名無しさん (ワッチョイ ff32-uXkv)
垢版 |
2024/09/17(火) 18:07:41.72ID:bvtQXCJ00
上の方でpolarsを知ったので、ちょっと試してたのですがやり方がわかりません。
2つのDFを比較して、A,B列の値が共通の場合新しい方のDFの行を使ってDFを作成するということがやりたいです。

以下のpandasの処理をpolarsでやりたいときどのようにしたら良いんでしょう?

filtered_df = dfOLD[~(dfOLD[“A”].isin(dfNEW[“A”]) & dfOLD[“B”].isin(dfNEW[“B”]))]
concat_df = pd.concat([dfNEW, filtered_df], axis=0, ignore_index=True)
2024/09/17(火) 18:29:39.94ID:ifJb33l00
>>973
空白は一つの例だよ
他にもtuple(list)で比較するのと"".join(list)で比較するのでは結果が異なるケースあるでしょ

それに今現在処理してるデータにそういうケースが含まれてるかどうかを調べるよりも
まずは要求仕様として列を連結した文字列が同じなら重複としてみなすのかどうかが大事

みなす仕様ならdf.drop_duplicates()を使うのは間違ってる
みなさない仕様なら"".join(list)で比較するのは間違ってる
2024/09/18(水) 05:40:32.41ID:X/am8lpR0
>>956
飼育員とか
2024/09/18(水) 10:09:46.84ID:cY7mpOqC0
自己レスです。意外とあっさり出来ました。> 975
import polars as pl
df1 = pl.DataFrame({"a": ['A1','A2','A3','A4'], "b": ['B1', 'B2', 'B3', 'B4'], "c": ['100', '200', '300', '400']})
df2 = pl.DataFrame({"a": ['A1','A2','A3'], "b": ['B1', 'B2', 'B3'], "c": ['150', '250', '350']})
filterDF = df1.join(df2, on=['a','b'], how="anti")
concatDF = pl.concat([df2, filterDF])
print(filterDF,concatDF)
2024/09/18(水) 19:08:32.27ID:6/+t/jhb0
単位の数Uがあって、nとUに対して
int(n/U)*U
を返す関数はどういう名前がいいだろう
2024/09/18(水) 20:05:30.82ID:EisHWYAH0
floor/round_down/align + (to +) unit/multiple
2024/09/18(水) 20:09:46.82ID:pnKtz9DD0
discretizeとか?
2024/09/18(水) 21:47:38.42ID:pnKtz9DD0
音楽ソフトなんかでは
拍子の位置に揃えるのを
quantizeって言うな
2024/09/18(水) 22:23:17.78ID:9wk3LXWe0
n//U*Uと(n+U-1)//U*Uが区別できる命名にしたいね
984デフォルトの名無しさん (ワッチョイ 577c-18DD)
垢版 |
2024/09/19(木) 18:45:28.76ID:WvuWfkM50
>>979
普通はtruncateじゃない?SQLにTRUNC関数がある
2024/09/19(木) 19:05:10.19ID:Cti+u+u60
MATLABのfloor(x, unit)と同じだからfloorだろう
2024/09/19(木) 19:26:31.64ID:dEupb3oa0
floorか
整数へのfloorはunit=1の特殊ケース
2024/09/19(木) 19:34:49.21ID:bCkvflxL0
整数化のfloorが有名過ぎて
混同の可能性ない?
2024/09/19(木) 23:17:36.39ID:Fum1rv8F0
関数の命名は内部実装がどうなってるかではなく
どういう意図でその関数を呼ぶのかという観点を第一とすべき

そのための第一歩は自然言語で意図を記述すること
それができてないうちは適切な命名とか無理
2024/09/20(金) 11:26:49.09ID:ZOd0SPdka
appendとかaddとかpushとか滅茶苦茶
2024/09/20(金) 11:52:25.51ID:L1lWeffx0
strだとreplaceでreだとsubなのやめて欲しい
2024/09/20(金) 11:58:37.64ID:kOrYHKy20
>>988
趣味でやってる人は仕様とかテストに縁がないからそういう感覚がたぶん分からないんだよ
992デフォルトの名無しさん (ワッチョイ 577c-18DD)
垢版 |
2024/09/20(金) 13:09:25.28ID:60VyqBLX0
>>985-987
数学的には、floorとかceilとかはunit=1のことしか指さない関数(というか、ℝ→ℤでそもそも定義域と値域の集合が異なるともいえる)なんだよねえ。この辺をどう見るか。
Python風に言えば、int(float_val)と、math.floor(float_val)は型が違うでしょう?という

ただ、>>988 のいっているように、これらは、絶対に考慮しなければならないことではなく、文脈依存だと思う。

https://ja.m.wikipedia.org/wiki/床関数と天井関数
2024/09/20(金) 13:16:40.50ID:opX5hmp20
>>979
単位変換くん2
2024/09/20(金) 13:19:35.67ID:L1lWeffx0
return int(n/unit)*unit
とすると、unitをintで与えるとintで返って、
floatで与えるとfloatで返る

直線を階段状に変換する図としては相似で、
階段の高さが1なのかそれ以外なのか
1以外だとして整数である必要もなく、有理数への自然な拡張に見える
995デフォルトの名無しさん (アウアウエー Sadf-N1Zj)
垢版 |
2024/09/20(金) 14:17:35.31ID:ZOd0SPdka
>>994
>return int(n/unit)*unit
>とすると、unitをintで与えるとintで返って、
>floatで与えるとfloatで返る

return int(float(n)/unit)*unit
って描いた方が良いよ
2024/09/20(金) 15:38:24.41ID:FmKVvlRa0
pandasのto_excelってopenpyxlを使ってるんだな
2024/09/20(金) 15:58:36.50ID:L1lWeffx0
openpyxlの遅さは実用にならないレベル
テスト用の小さいファイルでも普通に遅い
本番の大きなファイルだと数時間単位かかる
2024/09/20(金) 16:09:16.36ID:O/CsEend0
大きなファイルって何万行ぐらいあんの?
2024/09/21(土) 06:41:17.65ID:webYnJz00
エクセル作業の自動化でpythonでプログラム書いて完成はしたんだけど、書き込みが遅すぎる。
普通に手動でエクセル開いて書き込んで閉じた方が早いレベル。
マクロ含んでるからopenpyxlを使わないとダメだし、調べたらwrite_onlyモードにすると早いってあったけど、あれって新規でブック作る為のやつだよね。
何かいいのないのかしら。
2024/09/21(土) 08:47:29.73ID:yFilHDZF0
Excelのない環境で動作させんじゃなきゃ
ネイティブのスクリプト(TypeScript)使うのが素直
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 106日 23時間 59分 20秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。

▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/

▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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