当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。
「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。
このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。
★エラーを解決したい場合★は、
表示されたエラーの全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
実行環境(Pythonのバージョン・OSとIDEの種類およびバージョン)をシッカリ書くこと。
Pythonの★ソースコードをそのまま5ちゃんに貼るとインデントが崩れてチヌ★
【【【複数の連続半角スペースはなにもなかったことにされる&タブは普通には入れられない】】】掲示板の仕様なので、
プログラム文は↓等の、いわゆるコードうp用サイトに貼ってこいください。
ttps://techiedelight.com/compiler/ Run Code機能あり。
ttp://ideone.com/ デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Python公式◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi
〇前スレ〇
【まず1嫁】くだすれPython(超初心者用) その57
https://mevius.5ch.net/test/read.cgi/tech/1653225908/
次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###
探検
【まず1嫁】くだすれPython(超初心者用) その58
■ このスレッドは過去ログ倉庫に格納されています
2022/09/07(水) 10:33:53.50ID:RjZl78eW
733デフォルトの名無しさん
2023/04/23(日) 00:50:21.76ID:5wdUK5/t734デフォルトの名無しさん
2023/04/23(日) 01:11:58.08ID:X2+aRqhz735デフォルトの名無しさん
2023/04/26(水) 10:05:12.87ID:N7+hGpB4 (n+1)^2 = n^2 + 2n + 1
736デフォルトの名無しさん
2023/04/27(木) 19:48:04.07ID:R0Un3xzL タブ区切りのテキストファイルをpandasでエクセル(xlsx)出力しても、
エクセルやopenpyではタブ区切りされずに1列目に全データが表示されてしまいます。
各列のセルに区切るようにするにはどうすればよいでしょうか。
エクセルやopenpyではタブ区切りされずに1列目に全データが表示されてしまいます。
各列のセルに区切るようにするにはどうすればよいでしょうか。
737chatgpt
2023/04/27(木) 21:02:58.14ID:DRjZk9XF import pandas as pd
# タブ区切りのテキストファイルを読み込み
df = pd.read_csv('input.txt', sep='\t')
# Excelファイルに出力
df.to_excel('output.xlsx', index=False)
# タブ区切りのテキストファイルを読み込み
df = pd.read_csv('input.txt', sep='\t')
# Excelファイルに出力
df.to_excel('output.xlsx', index=False)
738デフォルトの名無しさん
2023/04/27(木) 21:25:48.49ID:4Kuw89oL739デフォルトの名無しさん
2023/04/27(木) 21:51:55.98ID:SJ3bN40w >>737
実際に吐き出されたxlsxをエクセルで開いたらタブで区切られませんでした。
既に試した方法ではあるのですが、やはり区切られませんでした。
# タブ区切りのテキストファイルを読み込み
df = pd.read_csv('input.txt', sep='\t')
# Excelファイルに出力
df.to_excel('output.xlsx', index=False)
実際に吐き出されたxlsxをエクセルで開いたらタブで区切られませんでした。
既に試した方法ではあるのですが、やはり区切られませんでした。
# タブ区切りのテキストファイルを読み込み
df = pd.read_csv('input.txt', sep='\t')
# Excelファイルに出力
df.to_excel('output.xlsx', index=False)
740デフォルトの名無しさん
2023/04/27(木) 22:51:52.06ID:wOi8WXAj 本当にタブ区切りなのか?
print(df)でちゃんとカラム分かれてるん?
print(df)でちゃんとカラム分かれてるん?
741デフォルトの名無しさん
2023/04/28(金) 01:13:15.30ID:EFykGfO7 ネット上で探すとselenium経由でスクレイピングして
パーサーにbeautiful soup(bs)って流れが多いんですが
bs単体でgetしない理由なんなんですか?
ってここまで書いて思ったけどjavascriptの扱いが問題あるか
パーサーにbeautiful soup(bs)って流れが多いんですが
bs単体でgetしない理由なんなんですか?
ってここまで書いて思ったけどjavascriptの扱いが問題あるか
742デフォルトの名無しさん
2023/04/28(金) 02:10:20.81ID:0Z+HC9sf それも大きいし
巡回部分のコードをある程度自動生成できる
巡回部分のコードをある程度自動生成できる
743デフォルトの名無しさん
2023/04/28(金) 07:10:16.28ID:EQuQ1pVF ログイン認証とか簡単に出来るしね
744デフォルトの名無しさん
2023/04/28(金) 07:18:11.57ID:EQuQ1pVF >>739
dataframeにどう格納されてるか確認してみたら?
dataframeにどう格納されてるか確認してみたら?
745デフォルトの名無しさん
2023/04/28(金) 08:22:44.73ID:xmj1SHMq >>741
そういう動的な要素の部分もあるかもだけど自分はjavascriptに格納された変数なんかもbsで抽出してなるべくselenium使わない方法を考える
どうしてもselenium使うとこはakamaiなんかのBOT対策入れてるとことかかな。
sensor_dataの生成部分となは再現かなり難しい
そういう動的な要素の部分もあるかもだけど自分はjavascriptに格納された変数なんかもbsで抽出してなるべくselenium使わない方法を考える
どうしてもselenium使うとこはakamaiなんかのBOT対策入れてるとことかかな。
sensor_dataの生成部分となは再現かなり難しい
746デフォルトの名無しさん
2023/04/28(金) 13:54:58.70ID:sll+3S7w 「text = ''」 これってどういう意味?
また、これをネットで調べようとしたらどうしたら良いですか?
下の2行目にあるやつです
from pathlib import Path
text = ''
current = Path()
また、これをネットで調べようとしたらどうしたら良いですか?
下の2行目にあるやつです
from pathlib import Path
text = ''
current = Path()
747デフォルトの名無しさん
2023/04/28(金) 13:58:31.42ID:SUO6mZHm 変数「text」に空の文字列を代入しているだけ。
748デフォルトの名無しさん
2023/04/28(金) 14:30:38.14ID:sll+3S7w ありがたい
助かった
助かった
749デフォルトの名無しさん
2023/04/28(金) 23:17:29.92ID:fezLcHII ダブルクオーテーション1つかと思ったw
750デフォルトの名無しさん
2023/04/28(金) 23:35:15.54ID:3iojin3R その手のはchatgptが良く答えてくれる
751chatgpt
2023/04/29(土) 09:57:23.90ID:ueoxn1ZD 「text = ''」は、Pythonプログラムの中で変数「text」を定義し、それを空の文字列で初期化していることを意味しています。
つまり、プログラムの中で「text」という変数を使用するために、最初に空の文字列で初期化する必要がある場合に使われます。
ネットで調べる場合は、Pythonの「text = ''」の意味を検索エンジンで検索してみることができます。また、Pythonのドキュメントやチュートリアルなどの公式リソースを参照することもできます。
つまり、プログラムの中で「text」という変数を使用するために、最初に空の文字列で初期化する必要がある場合に使われます。
ネットで調べる場合は、Pythonの「text = ''」の意味を検索エンジンで検索してみることができます。また、Pythonのドキュメントやチュートリアルなどの公式リソースを参照することもできます。
752デフォルトの名無しさん
2023/04/29(土) 10:15:52.63ID:ugMaX53P >また、Pythonのドキュメントやチュートリアルなどの公式リソースを参照することもできます。
これ次に投げたら該当箇所おしえてくれるん?
これ次に投げたら該当箇所おしえてくれるん?
753デフォルトの名無しさん
2023/04/29(土) 10:29:35.83ID:W487fgCq 教えてくれるよ
754デフォルトの名無しさん
2023/04/29(土) 13:33:25.01ID:APvoDMhe ChatGPTはPythonの学習にかなり有用だよね
グーグルだと質の低い個人ブログとかたくさん引っかかって
その中から自分で厳選しなきゃならん
一発でこうした簡潔な進言をしてくれるとかなり助かる
グーグルだと質の低い個人ブログとかたくさん引っかかって
その中から自分で厳選しなきゃならん
一発でこうした簡潔な進言をしてくれるとかなり助かる
755デフォルトの名無しさん
2023/04/29(土) 13:36:06.66ID:5A3xKPb3 div div div div li div divみたいな時に
目的のattr見つけるの骨折れるんだけど
サクッと見つけてfindallでぶっこ抜くテクニックみたいなのある?
目的のattr見つけるの骨折れるんだけど
サクッと見つけてfindallでぶっこ抜くテクニックみたいなのある?
756デフォルトの名無しさん
2023/04/29(土) 13:41:55.87ID:0iY2a6mx757デフォルトの名無しさん
2023/04/29(土) 13:49:38.17ID:Y0BFOI0c >>755
まんま、div li div[attr] みたいな曖昧なセレクタで検索すれば良くない?
まんま、div li div[attr] みたいな曖昧なセレクタで検索すれば良くない?
758デフォルトの名無しさん
2023/04/29(土) 15:19:01.46ID:cKY7lrd2 https://www.youtube.com/watch?v=VRFfAeW30qE
youtubeでスクレイピングを勉強していたのですがid取得が上手くいかず、ずっと調べてたら
Seleniumのバージョンが4になってからfind_element_by_idのメソッドが使えないことが原因でした。
ほかに似たような注意点がありますか?あと今学ぶならどこのサイトがいいかよろしければ教えてください。
ChatGPTにもしつこく聞いて2週間悩んでいてやっと解決・・・
youtubeでスクレイピングを勉強していたのですがid取得が上手くいかず、ずっと調べてたら
Seleniumのバージョンが4になってからfind_element_by_idのメソッドが使えないことが原因でした。
ほかに似たような注意点がありますか?あと今学ぶならどこのサイトがいいかよろしければ教えてください。
ChatGPTにもしつこく聞いて2週間悩んでいてやっと解決・・・
759デフォルトの名無しさん
2023/04/30(日) 09:45:37.60ID:/QlbhOQI find_hoge(By.hoge, txt)
に変わっただけでは?
に変わっただけでは?
760デフォルトの名無しさん
2023/04/30(日) 12:31:41.20ID:D8hC5aa9 https://www.selenium.dev/selenium/docs/api/py/
公式が用意してる文書は簡素だから
https://selenium-python.readthedocs.io/
非公式だけどこっち読んでもいいかもね
残念ながらJapaneseの先は古かったので日本語ほしけりゃ翻訳で
公式が用意してる文書は簡素だから
https://selenium-python.readthedocs.io/
非公式だけどこっち読んでもいいかもね
残念ながらJapaneseの先は古かったので日本語ほしけりゃ翻訳で
761デフォルトの名無しさん
2023/04/30(日) 14:29:20.31ID:/QlbhOQI hrefが何度やっても取れなくて詰んだかと思ってたら
html.parserのせいだったわ
使用非推奨だろこれ…
html.parserのせいだったわ
使用非推奨だろこれ…
762デフォルトの名無しさん
2023/05/01(月) 07:38:48.00ID:9Z+6zocL おはようございます
pythonの組み込み関数でsum()関数を調べたのですが
公式ドキュメントを見てみました。そしたら
sum(iterable, /, start=0)となっているのですが
真ん中の/って何なんでしょうか
sum([1,2,3], 0)の呼び出しは理解できます
sum([1,2,3], /, 0)と呼び出すとエラーになります
(第二引数に初期値と解説されたりするのですが)
/は第二引数だと思うのですが一体どうなってるのでしょうか
教えてください
pythonの組み込み関数でsum()関数を調べたのですが
公式ドキュメントを見てみました。そしたら
sum(iterable, /, start=0)となっているのですが
真ん中の/って何なんでしょうか
sum([1,2,3], 0)の呼び出しは理解できます
sum([1,2,3], /, 0)と呼び出すとエラーになります
(第二引数に初期値と解説されたりするのですが)
/は第二引数だと思うのですが一体どうなってるのでしょうか
教えてください
763デフォルトの名無しさん
2023/05/01(月) 10:13:45.70ID:RRWbl8de764デフォルトの名無しさん
2023/05/01(月) 10:17:42.58ID:n9fbf1g0765762
2023/05/01(月) 10:58:48.22ID:9Z+6zocL766デフォルトの名無しさん
2023/05/01(月) 18:12:03.63ID:qUDblxkj interaction.py でfooが正常に動いてbarがデコレータの処理に失敗する理由がわかりません…
https://techiedelight.com/compiler/?0D2o
「そんなライブラリ知らん」って方が多いと思うので、関数定義箇所によるの挙動の違いだけでも解説してもらえるとありがたいです
main() の中で関数定義してるだけでそんなに変わるものなんでしょうか
https://techiedelight.com/compiler/?0D2o
「そんなライブラリ知らん」って方が多いと思うので、関数定義箇所によるの挙動の違いだけでも解説してもらえるとありがたいです
main() の中で関数定義してるだけでそんなに変わるものなんでしょうか
767デフォルトの名無しさん
2023/05/02(火) 03:27:53.97ID:x60s3ooH >>726
Ruby なら、
https://paiza.io/projects/_Vy4rDrV3B2Z_5P7BZGtpw
出力
https://i.imgur.com/a.jpg
https://i.imgur.com/b.jpg
この行区切りのURL をファイルに保存したら、
wget, curl で、このリストを使って、
適当にwait しながら、ダウンロードする
もちろん、Rubyのopen-uri のopen( ) でもダウンロードできる
Ruby なら、
https://paiza.io/projects/_Vy4rDrV3B2Z_5P7BZGtpw
出力
https://i.imgur.com/a.jpg
https://i.imgur.com/b.jpg
この行区切りのURL をファイルに保存したら、
wget, curl で、このリストを使って、
適当にwait しながら、ダウンロードする
もちろん、Rubyのopen-uri のopen( ) でもダウンロードできる
768デフォルトの名無しさん
2023/05/02(火) 21:18:23.32ID:Iiod3Ljm Anacondaからselenium使えないし
通常環境だとNumba使えないし
どうしたらいいんだこれ
とりあえず一時ファイル作って切り替えてるけど
Pypyとかなら同時併用できるの?
通常環境だとNumba使えないし
どうしたらいいんだこれ
とりあえず一時ファイル作って切り替えてるけど
Pypyとかなら同時併用できるの?
769デフォルトの名無しさん
2023/05/05(金) 14:23:40.23ID:0Z/2QqWv SELECT YEAR
すると2018って出るし
print(df['YEAR'])
すると2018って出るのに
df = pd.read_sql_query(query, conn)で持ってきたデータフレームに
df.drop(['YEAR'])すると"['YEAR'] not found in axis"っていわれてはげそう
XY軸間違ってんのかと思って.to_frame().Tしてもダメだった
これpandas側ののバグですよね?どうしたら回避できるんですか?
すると2018って出るし
print(df['YEAR'])
すると2018って出るのに
df = pd.read_sql_query(query, conn)で持ってきたデータフレームに
df.drop(['YEAR'])すると"['YEAR'] not found in axis"っていわれてはげそう
XY軸間違ってんのかと思って.to_frame().Tしてもダメだった
これpandas側ののバグですよね?どうしたら回避できるんですか?
770デフォルトの名無しさん
2023/05/05(金) 14:36:51.96ID:TpSD3ns8771デフォルトの名無しさん
2023/05/05(金) 21:03:49.07ID:6BXdBTej windows10でアプリの自動ログインをしたいのですが色々あって悩んでいます。
PyAutoGUIとPower Automate Desktopならどちらがおすすめですか?
PyAutoGUIとPower Automate Desktopならどちらがおすすめですか?
772デフォルトの名無しさん
2023/05/05(金) 21:49:31.15ID:Zzp0Xs7d 二択なら両方試して使いやすい方にしたら?
そのアプリへの入力がSendKeysやWMで済むのか
もっと高度でないとダメなのかも不明だし
そのアプリへの入力がSendKeysやWMで済むのか
もっと高度でないとダメなのかも不明だし
773デフォルトの名無しさん
2023/05/05(金) 22:23:25.29ID:6BXdBTej774デフォルトの名無しさん
2023/05/06(土) 16:10:29.30ID:HrELFaNS python+pulpで勤務シフト作成の自動化をしようと思っています。
MDS = [(m, d, s) for m in range(len(MEMBERS)) for d in DAYS for s in range(len(SHIFTS))]
x = pulp.LpVariable.dicts("x", MDS, cat="Binary")
で0-1意思決定変数xを定義し、メンバーmが日dにシフトsを取ることをx[m,d,s]=1、取らないことをx[m,d,s]=0と表現します。
あるシフトを取った時はそのメンバーはその日に他のシフトは取れません。
例えばメンバー1が2日にシフト0の時はx[1,2,0] = 1,x[1,2,1]=0,x[1,2,2]=0となります。
「どの連続する2日を見てもメンバーm=1,2,3,4のうちの誰かが2日連続でシフト0でないシフトを取っている」という事を制約条件に加えたいです。
for d in DAYS[1:]:
prob += pulp.lpDot(([1-x[1,d-1,0],1-x[2,d-1,0],1-x[3,d-1,0],1-x[4,d-1,0]]),([1-x[1,d,0],1-x[2,d,0],1-x[3,d,0],1-x[4,d,0]]))>= 1
と書いてみたのですが、Non-constant expressions cannot be multiplied.のエラーが出ました。
どのように書けば良いでしょうか。
MDS = [(m, d, s) for m in range(len(MEMBERS)) for d in DAYS for s in range(len(SHIFTS))]
x = pulp.LpVariable.dicts("x", MDS, cat="Binary")
で0-1意思決定変数xを定義し、メンバーmが日dにシフトsを取ることをx[m,d,s]=1、取らないことをx[m,d,s]=0と表現します。
あるシフトを取った時はそのメンバーはその日に他のシフトは取れません。
例えばメンバー1が2日にシフト0の時はx[1,2,0] = 1,x[1,2,1]=0,x[1,2,2]=0となります。
「どの連続する2日を見てもメンバーm=1,2,3,4のうちの誰かが2日連続でシフト0でないシフトを取っている」という事を制約条件に加えたいです。
for d in DAYS[1:]:
prob += pulp.lpDot(([1-x[1,d-1,0],1-x[2,d-1,0],1-x[3,d-1,0],1-x[4,d-1,0]]),([1-x[1,d,0],1-x[2,d,0],1-x[3,d,0],1-x[4,d,0]]))>= 1
と書いてみたのですが、Non-constant expressions cannot be multiplied.のエラーが出ました。
どのように書けば良いでしょうか。
775デフォルトの名無しさん
2023/05/08(月) 12:47:19.21ID:XJG/CI4k WindowsでJupyterNotebookを使って大きいデータを扱うと終了後にファイル容量が増えていくんだけど、
作業フォルダのcheckpointsやhistory.sqlite以外に勝手に作成されているファイルって有りますか?
作業フォルダのcheckpointsやhistory.sqlite以外に勝手に作成されているファイルって有りますか?
776デフォルトの名無しさん
2023/05/09(火) 19:18:05.70ID:kL42aQrW bytesとstringの違いってなんですか?
bytesからdecodeできるのがstring?
bytesからdecodeできるのがstring?
777デフォルトの名無しさん
2023/05/09(火) 20:03:05.58ID:BqWcz4ac https://docs.python.org/ja/3/library/stdtypes.html
まず読んで
bytesはディスクや通信など外部データのバイト列そのもの(正確にはバイト列を包んだもの)
strは文字列、高次元の情報なのでPython外に直接持ち出せないため符号化する必要がある
まず読んで
bytesはディスクや通信など外部データのバイト列そのもの(正確にはバイト列を包んだもの)
strは文字列、高次元の情報なのでPython外に直接持ち出せないため符号化する必要がある
778デフォルトの名無しさん
2023/05/10(水) 06:12:33.22ID:zmtoAUL0 コンピュータ技術の根源だから実は難しいんよね
自分も何十年もこの世界にいるけど
いまだにテキストファイルとバイナリファイルの違いが説明できないし
自分も何十年もこの世界にいるけど
いまだにテキストファイルとバイナリファイルの違いが説明できないし
779デフォルトの名無しさん
2023/05/10(水) 17:11:24.88ID:5Rwc5Tpt 初学者なんだが[apple, banana, nut, mangosteen]というリストを文字の少ない順に並び変えてリストを再構築せよっていう問題
習ったことをあれやこれやで3時間くらいかけて作ったのがこれ
↓
https://ideone.com/e5Zk2C
解答みて唖然としたね
いやぁなんか相当遠回りな損した気分
習ったことをあれやこれやで3時間くらいかけて作ったのがこれ
↓
https://ideone.com/e5Zk2C
解答みて唖然としたね
いやぁなんか相当遠回りな損した気分
780デフォルトの名無しさん
2023/05/10(水) 18:13:02.07ID:3PLbEJS0781デフォルトの名無しさん
2023/05/10(水) 18:38:05.70ID:A8RgUVJx >>776
その理解で間違ってないよ
バイト列を特定のエンコーディング(符号演サ方式)を使って文字列として扱うための型がstringやstrと呼ばれるもの
pythonのstrの内部的に持ってるのはUnicodeのcode pointで表示したり保存したりするときに指定のエンコーディングを使う(デフォルトはUTF-8)
その理解で間違ってないよ
バイト列を特定のエンコーディング(符号演サ方式)を使って文字列として扱うための型がstringやstrと呼ばれるもの
pythonのstrの内部的に持ってるのはUnicodeのcode pointで表示したり保存したりするときに指定のエンコーディングを使う(デフォルトはUTF-8)
782デフォルトの名無しさん
2023/05/10(水) 19:32:28.22ID:vO85M+b+ >>779
俺氏も似たり寄ったりだわ
L = ['apple', 'banana', 'nut', 'mangosteen']
# 文字数 M = [5, 6, 3, 10]
M = [len(n) for n in L]
# 配列 ML = [[5, 'apple'], [6, 'banana'], [3, 'nut'], [10 'mangosteen']]
ML = [[M[i], L[i]] for i in range(len(L))]
# 文字数でソート S = [[3, 'nut'], [5, 'apple'], [6, 'banana'], [10 'mangosteen']]
S = sorted(ML)
# リストから要素を抽出して新しいリストを作成
result = [n[1] for n in S]
print(result)
俺氏も似たり寄ったりだわ
L = ['apple', 'banana', 'nut', 'mangosteen']
# 文字数 M = [5, 6, 3, 10]
M = [len(n) for n in L]
# 配列 ML = [[5, 'apple'], [6, 'banana'], [3, 'nut'], [10 'mangosteen']]
ML = [[M[i], L[i]] for i in range(len(L))]
# 文字数でソート S = [[3, 'nut'], [5, 'apple'], [6, 'banana'], [10 'mangosteen']]
S = sorted(ML)
# リストから要素を抽出して新しいリストを作成
result = [n[1] for n in S]
print(result)
783デフォルトの名無しさん
2023/05/10(水) 20:50:02.82ID:yeAvKW24 単純にソートすればええやんと思っちゃうんだが
ソートに関数を渡すという感覚を持ち合わせてないということなのかな?
ソートに関数を渡すという感覚を持ち合わせてないということなのかな?
784デフォルトの名無しさん
2023/05/10(水) 20:51:09.20ID:oYBR9wSW785デフォルトの名無しさん
2023/05/10(水) 21:07:58.85ID:hwwKafRF ソートを使うと計算量がn^2になってしまうから
配列のインデックスを文字列長にして
配列の内容をリンクドリストにして
追加しておくようにすれば
計算量が2nで済むけど
プログラミングは誰かに任せる
配列のインデックスを文字列長にして
配列の内容をリンクドリストにして
追加しておくようにすれば
計算量が2nで済むけど
プログラミングは誰かに任せる
786デフォルトの名無しさん
2023/05/10(水) 21:42:57.53ID:VnJnYO4m >>785
rubyなら
a = ['apple', 'banana', 'nut', 'mangosteen', 'bbb']
p a.each_with_object([]) {|x, a| (a[x.size] ||= []) << x}.compact.flatten
↓
["nut", "bbb", "apple", "banana", "mangosteen"]
rubyなら
a = ['apple', 'banana', 'nut', 'mangosteen', 'bbb']
p a.each_with_object([]) {|x, a| (a[x.size] ||= []) << x}.compact.flatten
↓
["nut", "bbb", "apple", "banana", "mangosteen"]
787デフォルトの名無しさん
2023/05/10(水) 21:47:38.00ID:Csgt+W1x >>785
timsortが要素数が少ないときにn^2になるinsertion sortを使うのはその方がn log nのmerge sortより速いから
それにそのアルゴリズムは実速度が遅くなることを抜きにしても文字列長をインデックスにした配列の長さmをオーダーに入れる必要がある
timsortが要素数が少ないときにn^2になるinsertion sortを使うのはその方がn log nのmerge sortより速いから
それにそのアルゴリズムは実速度が遅くなることを抜きにしても文字列長をインデックスにした配列の長さmをオーダーに入れる必要がある
788デフォルトの名無しさん
2023/05/11(木) 02:49:11.76ID:IsUfqIsW jypyterで再起動するごとにdataframeの列が上下ひっくり返る謎現象に悩んでたけど
通常のコードにしたら謎に解決した
意味わからん
通常のコードにしたら謎に解決した
意味わからん
789デフォルトの名無しさん
2023/05/11(木) 05:12:37.30ID:BtuDU+NS ソートのキーに文字数が指定できるという衝撃
実務でも使うのかな?
実務でも使うのかな?
790デフォルトの名無しさん
2023/05/11(木) 08:44:28.44ID:rmkBIaEM791デフォルトの名無しさん
2023/05/11(木) 11:28:35.88ID:0xrwE4ea sort関数使わずに苦労したのかと思ったら使ってはいるんだな
https://docs.python.org/ja/3.10/library/stdtypes.html#list.sort
にあるソート HOW TOに色々書いてある
L.sort(key=lambda x: len(x))
>>789
関数オブジェクトを渡すことは珍しいことではない
https://docs.python.org/ja/3.10/library/stdtypes.html#list.sort
にあるソート HOW TOに色々書いてある
L.sort(key=lambda x: len(x))
>>789
関数オブジェクトを渡すことは珍しいことではない
792デフォルトの名無しさん
2023/05/11(木) 12:17:48.22ID:rmkBIaEM793デフォルトの名無しさん
2023/05/11(木) 12:18:30.58ID:rmkBIaEM 前者はtypoっす
795デフォルトの名無しさん
2023/05/11(木) 12:20:33.76ID:Rj96Hzk9 LとかMみたいな命名はなるべく早く卒業したほうがいいぞ
lやmも同様
lやmも同様
796デフォルトの名無しさん
2023/05/11(木) 12:21:04.18ID:T7OjrNg5797デフォルトの名無しさん
2023/05/11(木) 12:21:38.71ID:T7OjrNg5798デフォルトの名無しさん
2023/05/11(木) 12:31:50.70ID:rmkBIaEM799デフォルトの名無しさん
2023/05/11(木) 12:34:00.77ID:2/EQwNdd Ruby なら、sort_by でシュオーツ変換なので高速。
sort はO(N^2)
input_fruits_ary = %w(apple, banana, nut, mangosteen)
# 文字列数の少ない順でソート
input_fruits_ary.sort_by! { |fruit| fruit.length }
p input_fruits_ary
#=> ["nut,", "apple,", "banana,", "mangosteen"]
# 文字列数の多い順でソート
input_fruits_ary.sort_by! { |fruit| fruit.length * -1 }
p input_fruits_ary
#=> ["mangosteen", "banana,", "apple,", "nut,"]
sort はO(N^2)
input_fruits_ary = %w(apple, banana, nut, mangosteen)
# 文字列数の少ない順でソート
input_fruits_ary.sort_by! { |fruit| fruit.length }
p input_fruits_ary
#=> ["nut,", "apple,", "banana,", "mangosteen"]
# 文字列数の多い順でソート
input_fruits_ary.sort_by! { |fruit| fruit.length * -1 }
p input_fruits_ary
#=> ["mangosteen", "banana,", "apple,", "nut,"]
800デフォルトの名無しさん
2023/05/11(木) 15:34:24.35ID:0xrwE4ea 確かにlenだけでよかったね、lambdaもあるよっていう事で許して
801デフォルトの名無しさん
2023/05/11(木) 19:51:35.88ID:VmIYuEHk >>799
rubyなら
a = ['apple', 'banana', 'nut', 'mangosteen', 'bbb']
p a.sort_by(&:size)
↓
["nut", "bbb", "apple", "banana", "mangosteen"]
rubyなら
a = ['apple', 'banana', 'nut', 'mangosteen', 'bbb']
p a.sort_by(&:size)
↓
["nut", "bbb", "apple", "banana", "mangosteen"]
802デフォルトの名無しさん
2023/05/14(日) 18:33:45.85ID:TVRCUOVE pickleファイルの他のクラスから読めない制約知らんかったわ…
先に教えてくれよ…
先に教えてくれよ…
803デフォルトの名無しさん
2023/05/14(日) 19:39:14.54ID:JeiAQ+ra804デフォルトの名無しさん
2023/05/15(月) 12:25:46.20ID:XYoBnzaj すみません、pythonのべん今日のために数独のプログラムを作ろうとしていますが、
以下のコードで、なぜかbreakを読み取ってくれません
下らないミスだとは思いますが、ご指摘お願いします。
コード:
https://pastebin.com/fzN186CM
実行結果:
[1, 5, 0, 0, 2, 0, 0, 9, 7]
以下のコードで、なぜかbreakを読み取ってくれません
下らないミスだとは思いますが、ご指摘お願いします。
コード:
https://pastebin.com/fzN186CM
実行結果:
[1, 5, 0, 0, 2, 0, 0, 9, 7]
805デフォルトの名無しさん
2023/05/15(月) 12:34:22.26ID:gqAJstNf for内にprint(i)入れたらすぐわかるよ
デバッグはVSCODEあたり使った方が圧倒的に便利だよ
デバッグはVSCODEあたり使った方が圧倒的に便利だよ
806804
2023/05/15(月) 12:46:26.64ID:XYoBnzaj ありがとうございます、解決しました
VSCODEも試してみます
VSCODEも試してみます
807デフォルトの名無しさん
2023/05/15(月) 16:44:25.66ID:WphFmj6/ プログラムの勉強こそ、ChatGPT活用したほうがいいよ
808デフォルトの名無しさん
2023/05/15(月) 21:12:54.24ID:96tZdU2Q >>807
それな
以前、「特定のフォルダを監視して新たに保存されたファイル名を
DBに格納していく。ただし監視中にCPUを占有しないこと」という
コードを書きたくて質問したことがあるけど
ChatGPTに同じ質問を投げたら、何とそのまま動くコードが返ってきてビビった
それな
以前、「特定のフォルダを監視して新たに保存されたファイル名を
DBに格納していく。ただし監視中にCPUを占有しないこと」という
コードを書きたくて質問したことがあるけど
ChatGPTに同じ質問を投げたら、何とそのまま動くコードが返ってきてビビった
809デフォルトの名無しさん
2023/05/16(火) 00:15:28.47ID:2QNh0/Yl >>532
''.join( "s_i_t_e:ko_kk_ai.n_dl.go.j_p 朝_鮮".split("_") )
''.join( "s_i_t_e:ko_kk_ai.n_dl.go.j_p 朝_鮮".split("_") )
810デフォルトの名無しさん
2023/05/16(火) 20:14:23.46ID:V9hbYivE811デフォルトの名無しさん
2023/05/17(水) 05:26:13.56ID:RdROygPB812デフォルトの名無しさん
2023/05/17(水) 11:47:49.75ID:J1gzoaOm 【動画】「憲政史上初」国会でChatGPTが岸田総理に質問(2023年3月29日) | ANNnewsCH
ps://www.youtube.com/watch?v=o1zv1cxt9G0
ChatGPTトップ「政府の規制が重要」議会初証言で|TBS NEWS DIG | TBS NEWS DIG Powered by JNN
ps://www.youtube.com/watch?v=C85FOvn_woE
第211回国会 衆議院 内閣委員会 第9号 令和5年3月29日 | テキスト表示 | 国会会議録検索システム シンプル表示
ps://kokkai.ndl.go.jp/simple/detail?minId=121104889X00920230329&spkNum=16
ps://www.youtube.com/watch?v=o1zv1cxt9G0
ChatGPTトップ「政府の規制が重要」議会初証言で|TBS NEWS DIG | TBS NEWS DIG Powered by JNN
ps://www.youtube.com/watch?v=C85FOvn_woE
第211回国会 衆議院 内閣委員会 第9号 令和5年3月29日 | テキスト表示 | 国会会議録検索システム シンプル表示
ps://kokkai.ndl.go.jp/simple/detail?minId=121104889X00920230329&spkNum=16
813デフォルトの名無しさん
2023/05/17(水) 12:34:52.88ID:akNcZT8e import webbrowser
lst = [ ['htt','ps://','www.youtube','.com/watch'],
['?v=','KkwWALkuYOM'],
['&list=','PLBjMF7sSdVpiSnddPZsfTEOjOZUD4ftCa'] ]
link = "".join( ["".join(e) for e in lst] )
print( "韓国による嘘[・・・日本が朝鮮にした恐ろしいこと?] | tokinomori13",
link, sep="\n")
webbrowser.open( link )
lst = [ ['htt','ps://','www.youtube','.com/watch'],
['?v=','KkwWALkuYOM'],
['&list=','PLBjMF7sSdVpiSnddPZsfTEOjOZUD4ftCa'] ]
link = "".join( ["".join(e) for e in lst] )
print( "韓国による嘘[・・・日本が朝鮮にした恐ろしいこと?] | tokinomori13",
link, sep="\n")
webbrowser.open( link )
814デフォルトの名無しさん
2023/05/17(水) 18:44:02.07ID:0tiXVM80 トロイの木馬みたいなコードを書くなら、もっと精巧にやってほしいよな。
そんな見ただけで結果が明らかなコード書かれても何も面白くないじゃないか。
そんな見ただけで結果が明らかなコード書かれても何も面白くないじゃないか。
815デフォルトの名無しさん
2023/05/17(水) 21:23:47.47ID:WYa1maRz LogicクラスとCreateクラス作って
MainクラスからLogicクラスのインスタンス作って
LogicクラスからCreateクラスのインスタンス作って
Mainからlogic.hoge()しても実態はCreate.hoge()読んでるだけだったりするとき
もうMainから直接インスタンス作れば良いんじゃないかって思ったりする訳ですが
何重にもラッパー作る意味ってなんですか?
MainクラスからLogicクラスのインスタンス作って
LogicクラスからCreateクラスのインスタンス作って
Mainからlogic.hoge()しても実態はCreate.hoge()読んでるだけだったりするとき
もうMainから直接インスタンス作れば良いんじゃないかって思ったりする訳ですが
何重にもラッパー作る意味ってなんですか?
816デフォルトの名無しさん
2023/05/17(水) 22:09:19.38ID:oza9WAtC コードの例え話は好きではないんだけども
八百屋で野菜買いたいだけなのに仕入れとか栽培まで考慮したくなくない?
やりたいのは夜ご飯をつくることなのに
関心事を適度に分離して役割分担するのが
リアルでもコードでもシンプルで上手くいくコツ
八百屋で野菜買いたいだけなのに仕入れとか栽培まで考慮したくなくない?
やりたいのは夜ご飯をつくることなのに
関心事を適度に分離して役割分担するのが
リアルでもコードでもシンプルで上手くいくコツ
817デフォルトの名無しさん
2023/05/17(水) 23:41:19.05ID:iFswwcsk >>1
print("IT業界のヤバすぎる落とし穴5選 | やまもとりゅうけん",
"htt" "ps://www" ".youtube.com/watch?v=" "WPPCJ4o-mpA", sep = "\n")
print("IT業界のヤバすぎる落とし穴5選 | やまもとりゅうけん",
"htt" "ps://www" ".youtube.com/watch?v=" "WPPCJ4o-mpA", sep = "\n")
818デフォルトの名無しさん
2023/05/18(木) 10:01:24.32ID:hFb4AYt9819デフォルトの名無しさん
2023/05/18(木) 11:58:11.35ID:aICdVmJ+ pdfminerでページごとにテキストを抽出しようとしているのですが、
Aの抽出にすると何故か次ページの情報まで含まれてしまいます。
Bの方法だとちゃんと該当ページの情報だけになるのですが、
テキストグループ単位で改行されないのでちょっと都合が悪いです。
Bの方法でテキストグループ単位でセパレートすることはできるのでしょうか?
A: device = TextConverter(rsrcmgr, retstr,codec=codec,laparams=LAParams())
B: device = TextConverter(rsrcmgr, retstr,codec=codec)
Aの抽出にすると何故か次ページの情報まで含まれてしまいます。
Bの方法だとちゃんと該当ページの情報だけになるのですが、
テキストグループ単位で改行されないのでちょっと都合が悪いです。
Bの方法でテキストグループ単位でセパレートすることはできるのでしょうか?
A: device = TextConverter(rsrcmgr, retstr,codec=codec,laparams=LAParams())
B: device = TextConverter(rsrcmgr, retstr,codec=codec)
820819
2023/05/18(木) 13:17:57.42ID:aICdVmJ+ とりあえずは自己解決しました。
PDFの方で非表示情報を削除することで解決しました。
PDFの方で非表示情報を削除することで解決しました。
821デフォルトの名無しさん
2023/05/19(金) 02:07:24.52ID:iSJAQTOS http://mevius.5ch.net/test/read.cgi/tech/1680075092/89
[Python]の例が気になったんですが、
この書き方は普通ですか?もっとエレガントに書くとしたらどうしますか?
[Python]の例が気になったんですが、
この書き方は普通ですか?もっとエレガントに書くとしたらどうしますか?
822デフォルトの名無しさん
2023/05/19(金) 02:27:08.01ID:yl46Wrbm シンプルに書くと
"-".join(map(str, sorted(a, reverse=True)))
右から左の流れで書くなら
"-".join(str(x) for x in sorted(a, reverse=True))
エレガントかは自信なし
"-".join(map(str, sorted(a, reverse=True)))
右から左の流れで書くなら
"-".join(str(x) for x in sorted(a, reverse=True))
エレガントかは自信なし
823デフォルトの名無しさん
2023/05/19(金) 04:05:00.53ID:ZOdh2xkh pythonにエレガントさを求めるのが間違い
"-".joinの時点ですでにエレガントじゃないから諦めろ
"-".joinの時点ですでにエレガントじゃないから諦めろ
824デフォルトの名無しさん
2023/05/19(金) 10:14:23.98ID:RFMu3wvR なんで リスト.join() じゃなく
文字列.join(リスト) にしたんだろうな。
.split()なんかに対して、直感に反してる気がする。実際に他言語はリスト.joinだし
文字列.join(リスト) にしたんだろうな。
.split()なんかに対して、直感に反してる気がする。実際に他言語はリスト.joinだし
825デフォルトの名無しさん
2023/05/19(金) 11:35:03.05ID:RFMu3wvR と思ったらこれには思想と歴史的な背景があるのね。
826デフォルトの名無しさん
2023/05/19(金) 11:39:01.45ID:ouZU/kaO オブジェクト指向言語じゃなかったから
827デフォルトの名無しさん
2023/05/20(土) 05:07:12.15ID:r4oY1rB+ この言語は完全に行き詰まってるから
ゴキブリに乗り換えるしかないな
ゴキブリに乗り換えるしかないな
828デフォルトの名無しさん
2023/05/20(土) 15:29:18.20ID:ej5QdAy9 # >>812
text = '''
国会会議録検索システム
ps://kokkai.ndl.go.jp
帝国議会会議録検索システム
ps://teikokugikai-i.ndl.go.jp/
国会会議録検索システム シンプル表示
ps://kokkai.ndl.go.jp/simple/
帝国議会会議録検索システム シンプル表示
ps://teikokugikai-i.ndl.go.jp/simple/
国会会議録検索システム ヘルプ(使い方ガイド)
ps://kokkai.ndl.go.jp/help.html
APIの利用|国立国会図書館―National Diet Library
ps://www.ndl.go.jp/jp/use/api/index.html
site:kokkai.ndl.go.jp python
'''
print(text.replace("ps://","htt"+"ps://"))
text = '''
国会会議録検索システム
ps://kokkai.ndl.go.jp
帝国議会会議録検索システム
ps://teikokugikai-i.ndl.go.jp/
国会会議録検索システム シンプル表示
ps://kokkai.ndl.go.jp/simple/
帝国議会会議録検索システム シンプル表示
ps://teikokugikai-i.ndl.go.jp/simple/
国会会議録検索システム ヘルプ(使い方ガイド)
ps://kokkai.ndl.go.jp/help.html
APIの利用|国立国会図書館―National Diet Library
ps://www.ndl.go.jp/jp/use/api/index.html
site:kokkai.ndl.go.jp python
'''
print(text.replace("ps://","htt"+"ps://"))
829デフォルトの名無しさん
2023/05/20(土) 16:09:02.25ID:pXEYjqEz text = '''\
蛇 -filetype:pdf site:teikokugikai-i.ndl.go.jp\
'''
lst = text.split('\n')
for line in lst: print( text, lst, ' '.join( line.split()[::-1] ), sep="\n\n" )
蛇 -filetype:pdf site:teikokugikai-i.ndl.go.jp\
'''
lst = text.split('\n')
for line in lst: print( text, lst, ' '.join( line.split()[::-1] ), sep="\n\n" )
830デフォルトの名無しさん
2023/05/20(土) 17:15:32.37ID:wv6TyxaN 初心者です。よろしくお願いします。
チャート画像をスクレイピングしたいのですが上手くいきません。
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
browser = webdriver.Chrome('chromedriver.exe')
url = "https://jp.kabumap.com/servlets/kabumap/Action?SRC=chart/base&codetext=4449"
browser.get(url)
sleep(10)
elem_img = browser.find_element(By.ID, "gifChart_img_real")
elem_img
デベロッパーツールでチャートのidを取得したのに
NoSuchElementException と出ます。
どうすればよいでしょうか?
チャート画像をスクレイピングしたいのですが上手くいきません。
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
browser = webdriver.Chrome('chromedriver.exe')
url = "https://jp.kabumap.com/servlets/kabumap/Action?SRC=chart/base&codetext=4449"
browser.get(url)
sleep(10)
elem_img = browser.find_element(By.ID, "gifChart_img_real")
elem_img
デベロッパーツールでチャートのidを取得したのに
NoSuchElementException と出ます。
どうすればよいでしょうか?
831デフォルトの名無しさん
2023/05/20(土) 17:58:15.66ID:BNhw9lNy shelveで定期的にsyncしてるのにコミットチャージが線形で増えていきます
適度にdel挟まないといけないのでしょうか?
適度にdel挟まないといけないのでしょうか?
832デフォルトの名無しさん
2023/05/20(土) 23:01:09.44ID:6r8zDIVe >>830
gifChart_img_realはiframeの中にあるので
iframe = browser.find_element(By.ID, "chart_frame")
browser.switch_to.frame(iframe)
してから取得する
gifChart_img_realはiframeの中にあるので
iframe = browser.find_element(By.ID, "chart_frame")
browser.switch_to.frame(iframe)
してから取得する
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市早苗氏、総裁選のPRに8000万円超支出していたことが判明。水面下で巨費投じる [バイト歴50年★]
- 【滋賀】不良グループのメンバーの「タイマン」で17歳重体 殺人未遂容疑で岐阜市の19歳を逮捕 頭蓋骨骨折や脳挫傷、急性硬膜下血腫 ★2 [ぐれ★]
- 【外交】中国大使館、自民党の石破茂前首相の発言「台湾は中国の一部。変えてはならない」をX投稿 産経 [1ゲットロボ★]
- Amazonブラックフライデー 活況の裏に過酷労働 事故やケガを「自己責任にしないで」配達員ら4年連続抗議 [蚤の市★]
- 「おこめ券知られていない」農水省が説明会実施へ 「税金でおこめ券配ると、発行2団体に利益集中するのでは?」記者の問いに鈴木農水大臣 [ぐれ★]
- 経団連会長、中国大使面会 代表団受け入れ要請 [蚤の市★]
- 【実況】博衣こよりのえちえち4周年44人逆凸 🧪★3
- 【実況】博衣こよりのえちえち4周年44人逆凸 🧪★4
- 【実況】博衣こよりのえちえち4周年44人逆凸 🧪★5
- 【動画】石破茂メイク界隈にとんでもない猛者が現れるwwwwwwwwww [834922174]
- 【衝撃】去年の自民党総裁戦、高市は宣伝費に約8400万円もの巨額を使っていた ※この時勝利した石破は約40万円 [597533159]
- 👊👊😅 👊👊😅 さかなーっ!🏡
