Pythonのお勉強 Part74

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 0b4a-lz98)
垢版 |
2024/09/21(土) 10:14:02.15ID:ZHy4g+PL0
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

※前スレ
Pythonのお勉強 Part73
https://mevius.5ch.net/test/read.cgi/tech/1717631290/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
321デフォルトの名無しさん (ワッチョイ e38e-R46Z)
垢版 |
2024/11/12(火) 20:07:54.86ID:v7TGFNyn0
Pythonが誕生したころは、まだ1バイト使うか4バイトも使うか記憶装置の容量では悩むレベルだったから、タブを使うか半角スペースを複数個使うかで
322デフォルトの名無しさん (ワッチョイ e38e-R46Z)
垢版 |
2024/11/12(火) 20:08:36.68ID:v7TGFNyn0
人によって意見がわれていた
323デフォルトの名無しさん (ワッチョイ 4b8e-DV/N)
垢版 |
2024/11/12(火) 20:25:38.59ID:J1Sn69yS0
>>320
お前が何も知らない馬鹿なだけかと
2024/11/12(火) 21:12:33.59ID:ZcEeG3hE0
半角SPw
2024/11/12(火) 21:16:46.59ID:nvqj0JfO0
日本人の一部にしかメリットなくても、残りの誰にもデメリット無いなら、
それはメリットしか無いのでは
326デフォルトの名無しさん (アウアウエー Sa13-vkNS)
垢版 |
2024/11/13(水) 02:13:50.19ID:lxEAsUm8a
デメリットだらけ
327デフォルトの名無しさん (ワイーワ2 FF93-R46Z)
垢版 |
2024/11/14(木) 19:11:38.32ID:g26vUJe4F
ここで質問しているやつはPythonの資格対策本でも買って勉強しろ
328デフォルトの名無しさん (ワッチョイ 2bb6-QT1F)
垢版 |
2024/11/15(金) 10:25:38.19ID:G6HDJDaQ0
uvはactivate必要なのか
pyenvとpoetryでいいわ
329デフォルトの名無しさん (ワッチョイ e3dd-R46Z)
垢版 |
2024/11/15(金) 17:45:24.05ID:Jz1yaJFv0
>>328
プロアクティブが必要
2024/11/16(土) 19:00:54.48ID:ILOr4dg40
既存のファイルを'w'でopenする時に、他のプロセスがアクセスしているとOSErrorになることがある
ならないこともある
ファイルが大きいとなるっぽい

なんとか強引に開けないものか
331デフォルトの名無しさん (ワッチョイ 1b5c-Bg8t)
垢版 |
2024/11/16(土) 21:38:03.01ID:JvbcygrM0
width同じでheightバラバラのjpg画像が大量にあるんだがこれをpdfに上下に敷き詰めるにはどうしたらいいの?
2024/11/16(土) 23:24:04.57ID:3kqPnMcZ0
>>330
windowsならWin32 APIでsharing modeを指定

>>331
bin packing problemでググれ
2024/11/17(日) 11:06:04.94ID:tn0ahmRja
print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), np.timedelta64(30, 'D')))

['2024-11-01' '2024-12-01' '2024-12-31' '2025-01-30' '2025-03-01' '2025-03-31' '2025-04-30']

print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), np.timedelta64(31, 'D')))

['2024-11-01' '2024-12-02' '2025-01-02' '2025-02-02' '2025-03-05' '2025-04-05']
なんだが

['2024-11' '2024-12' '2025-01' '2025-02' '2025-03' '2025-04']
が欲しい
2024/11/17(日) 12:17:30.72ID:EcgVWlk90
>>333
月ベースで計算したいのになぜ日ベースで計算しようとするのか

In : np.arange(np.datetime64('2024-11'), np.datetime64('2025-05'))
Out: array(['2024-11', '2024-12', '2025-01', '2025-02', '2025-03', '2025-04'], dtype='datetime64[M]')
2024/11/17(日) 12:24:22.30ID:33eX3D3e0
関係ないけど、excelで日毎のデータが何年分もあって、
グラフの横軸を年月で表示しようとしても微妙にうまく行かない
2024/11/17(日) 13:42:46.70ID:tn0ahmRja
>>334
ありがとう
print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), np.timedelta64(1, 'M')))
でエラーだったからどうしたもんかと
2024/11/17(日) 14:01:43.54ID:tn0ahmRja
print(np.arange(np.datetime64('2024-11-01'), np.datetime64('2025-05-01'), dtype='datetime64[M]'))
これでもうまくいったわ
338デフォルトの名無しさん (ワッチョイ 8e83-d7kS)
垢版 |
2024/11/17(日) 14:12:53.82ID:ENY5bRjq0
>>332
回答ありがたいんだが番号振られてあるから順番に上から下に敷き詰めたいんだが
339 警備員[Lv.10][芽] (ワッチョイ 6fad-gDrC)
垢版 |
2024/11/17(日) 17:22:39.74ID:z11Q5dQO0
下記の内容で Microsoft Copilot に聞いてみた で教えてくれる
------
pythonでwidth同じでheightバラバラのjpg画像が大量にあるんだがこれをpdfに上下に敷き詰めるにはどうしたらいいの?
番号振られてあるから順番に上から下に敷き詰めたいんだが
2024/11/17(日) 17:33:31.08ID:33eX3D3e0
pdfの高さが決まってて、そこに入るだけ順番に入れてくだけの話?

if トータル高さ > pdfの高さ:
 次のページに

というだけのアルゴリズムでいけるのでは
341 警備員[Lv.10][芽] (ワッチョイ 6fad-gDrC)
垢版 |
2024/11/17(日) 17:40:21.98ID:z11Q5dQO0
聞いてみた結果
--from PIL import Image
from reportlab.lib.pagesizes import portrait
from reportlab.pdfgen import canvas
import os
# 画像が保存されているディレクトリのパス
image_dir = 'my_folder'
output_pdf = 'output.pdf'
# 画像ファイルのリストを取得し、ファイル名順にソート
image_files = sorted([f for f in os.listdir(image_dir) if f.endswith('.jpg')])
# 画像の幅を取得(すべての画像が同じ幅である前提)
first_image = Image.open(os.path.join(image_dir, image_files[0]))
width, _ = first_image.size
# PDFキャンバスの作成
c = canvas.Canvas(output_pdf)
# 画像をPDFに追加
for image_file in image_files:
image_path = os.path.join(image_dir, image_file)
img = Image.open(image_path)
img_width, img_height = img.size
if img_width != width:
raise ValueError(f"Image {image_file} has a different width: {img_width}")
# ページサイズを画像の縦サイズに設定し、新しいページを追加
c.setPageSize((width, img_height))
c.showPage()
# 画像をPDFに描画
c.drawImage(image_path, 0, 0, width=width, height=img_height)
# PDFの保存
c.save()
342 警備員[Lv.10][芽] (ワッチョイ 6fad-gDrC)
垢版 |
2024/11/17(日) 17:51:48.14ID:z11Q5dQO0
--tabがわからん
# 画像をPDFに追加
for image_file in image_files:
  image_path = os.path.join(image_dir, image_file)
  img = Image.open(image_path)
  img_width, img_height = img.size
  if img_width != width:
    raise ValueError(f"Image {image_file} has a different width: {img_width}")
  # ページサイズを画像の縦サイズに設定し、新しいページを追加
  c.setPageSize((width, img_height))
  c.showPage()
  # 画像をPDFに描画
  c.drawImage(image_path, 0, 0, width=width, height=img_height)
# PDFの保存
c.save()
2024/11/17(日) 17:56:32.18ID:33eX3D3e0
datにはインデントのスペースも書かれてるんだけどな
表示のレンダリングで落としちゃうだけなので、
ブラウザに先頭のスペースを無視しないモードがあれば済むのに
344デフォルトの名無しさん (ワッチョイ 62d6-EBAf)
垢版 |
2024/11/18(月) 07:06:37.63ID:INV+aJIp0
【ナゾロジー】サイコパスは「痛みを伴う失敗」から学習できない! [すらいむ★]
http://itest.5ch.net/egg/test/read.cgi/scienceplus/1731838156
345デフォルトの名無しさん (アウアウエー Sa3a-iI0F)
垢版 |
2024/11/18(月) 12:58:55.73ID:0TuJxtFYa
>>343
専ブラ
346デフォルトの名無しさん (ワッチョイ 6742-PMgB)
垢版 |
2024/11/22(金) 01:57:46.65ID:icDgwF6r0
某キャリア回線アプリのON、OFFをAPI送信で叩きたいけど
POSTMANでは正常に叩けてアプリに反映されれるけど
python経由だとレスポンスが正常だけどなぜかアプリ側に反映されない。
POSTMANと全く同じヘッダーつけてもダメだった。
わかる方いるかしら?
347デフォルトの名無しさん (JP 0Hfa-rt3S)
垢版 |
2024/11/22(金) 23:22:02.38ID:axFgaWRBH?2BP(1000)

EchoAPIを使い始めて、このツールのおかげでAPIテストが効率化されし、機能開発にももっと集中できるようになった!
348デフォルトの名無しさん (ワッチョイ 6742-PMgB)
垢版 |
2024/11/23(土) 00:31:01.88ID:IcKkVXcm0
>>346
自己解決 APIが違った。
似たようなAPIがあって確認ミス
2024/11/25(月) 01:12:59.73ID:gOO2TZvc0
ハイパーモダンpython読みにくいなこれ
翻訳は悪いとは思わない
説明対象になる要素が出てくる順とか元の文章の流れが悪すぎる
350デフォルトの名無しさん (ワッチョイ ff2a-sa1W)
垢版 |
2024/11/25(月) 08:02:05.82ID:icG0ziFd0
これか。何か嬉しいことが書いてあるのかな。
cjolowicz.github.io/posts/hypermodern-python-01-setup/
351デフォルトの名無しさん (ワッチョイ 9fc2-ZGYG)
垢版 |
2024/11/25(月) 09:32:40.34ID:SsaYg1Am0
科学 + ンニュース 5ch

保守派もリベラル派も「自分の政治的信念に合致したニュース」を信じやすいという研究結果 [すらいむ★]
https://itest.5ch.net/egg/test/read.cgi/scienceplus/1732447647

コメントも含めて読むと
陰謀論が収まら無い理由が判明する
2024/11/29(金) 17:36:52.72ID:1nbpjyP00
byteからstrへの変換がdecodeなんだから、
open()のencodingはdecodingが正解なのでは
353デフォルトの名無しさん (ワッチョイ d7ad-aW8T)
垢版 |
2024/11/30(土) 01:20:49.70ID:hNQfUfJr0
encodingは変換という意味だから、いいのでは
354デフォルトの名無しさん (ワッチョイ b72a-sa1W)
垢版 |
2024/11/30(土) 08:09:26.50ID:VXfE+2kW0
日常生活においてはいいけど、
Python のドキュメントに当たるときは、あやふやにしていると混乱する。
2024/11/30(土) 08:31:45.38ID:OzjPxg3T0
'r'でも'w'でもencoding=なんだから、そういう意味じゃないのは自明だったな

encoding はファイルのエンコードやデコードに使われる text encoding の名前です
There are a variety of different text serialization codecs, which are collectively referred to as "text encodings".
2024/11/30(土) 14:43:48.94ID:wliauO6ld
Streamlitアプリのパッケージ管理するなら、今ならuvがいいですか?
まだpython始めて1年くらいで、メインはNodejsフロントエンドなんですけど、今までconda使ってたんですが、しばらく触ってないとどの環境でどのアプリのどのブランチ触ってたかわかんなくなります、、、
357デフォルトの名無しさん (アウアウエー Sadf-wjfe)
垢版 |
2024/11/30(土) 15:01:57.04ID:l0dFcapba
git
358デフォルトの名無しさん (ワッチョイ bf40-8f7s)
垢版 |
2024/11/30(土) 17:23:52.72ID:UTmme7fc0
>>356
venv
2024/11/30(土) 17:33:17.56ID:OzjPxg3T0
環境の管理はまだ未成熟な気がするし、
何もしなくてもいい気もする
2024/12/01(日) 06:15:27.09ID:qIIa6Po8F
何かしら管理はしないと、
あとで触ったら時にいつのまにか動かなくなってたりしませんか?

uv触ってみました、良いですねこれ
仮想環境アクティブにしなくてもそのままスクリプト実行できますし、lockファイルがクロスプラットフォームなのがいいです
本当にnpmみたいです
361デフォルトの名無しさん (ワッチョイ 6fad-5WnV)
垢版 |
2024/12/01(日) 06:50:38.03ID:usl5rUYN0
AIでpythoのプログラム作成しているんだけど
完成したから、おしゃれなコメントをつけてって入れたら
なんかずっと返ってこない。
すごい、おしゃれなコメントを作っているのかな
362デフォルトの名無しさん (ワッチョイ 6fad-5WnV)
垢版 |
2024/12/01(日) 07:06:01.18ID:usl5rUYN0
おしゃれコメント生成はやめどきが難しい
# 画像やテキストを解析し、結果をお届け # ファイルがドロップされたら画像を読み込む魔法
# ここからがメインの舞台 # 画像を一瞬でBase64に変身させる # 新しい会話をエレガントに開始
2024/12/01(日) 17:18:14.50ID:/Q96hWUr0
driver.find_element(By.XPATH, ***).send_keys("***")
2024/12/01(日) 17:24:13.28ID:/Q96hWUr0
driver.find_element(By.XPATH, ***).send_keys("***")
でフォームに入力し、書き込みボタンを押して投稿するものを書いたのですが、
入力されないしボタンも押されず、固まっていることが頻繁にあります
これを防ぐ方法はありますか?
2024/12/01(日) 17:39:11.83ID:tRbUIFef0
waitを入れる
2024/12/01(日) 18:11:22.37ID:1JLx1bUH0
ログはどうなってる?
2024/12/01(日) 18:35:41.80ID:/Q96hWUr0
初心者なのでよく分かっていないですけど、コマンドプロンプトには何も表示されていないです。
書き込みできないまま止まっていて、getで再度サイトにアクセスすると書き込めるようになるときがあります
2024/12/01(日) 18:40:02.51ID:tRbUIFef0
input()とかbreakpoint()とかで止めながら試す
2024/12/01(日) 19:14:40.51ID:/Q96hWUr0
>>368
ありがとうございます
後ほど試してみます
2024/12/01(日) 21:56:37.25ID:/BlP4ndo0
どうしてもseleniumを使い続けなきゃいけない理由がないならplaywrightとかもう少しモダンなやつ使ったら?
send_keysが思ったように動かないとか手動でwaitいれなきゃいけないとか2020年代にする話じゃない
2024/12/01(日) 22:24:05.62ID:tRbUIFef0
RPAなんかも、細かく指定する原始的なのと勝手にやってくれる抽象的なのが同居してる

一旦苦労しといて、新しいのは楽だぜいとステップを踏んだ方がきっと楽しい
2024/12/01(日) 23:08:44.46ID:1o85ezT5d
(1)用語をいちいち意味不明なモンティパイソン用語に置き換えてあるのがうざい。それ以外も趣味悪い置き換えばかり。
(2)参考書でページ跨ぐ時にインデントの位置が読み取りにくい
2024/12/01(日) 23:16:42.03ID:gMHLdZsad
アップデートあると動かなくなるとかやめて
374デフォルトの名無しさん (ワッチョイ 6fad-5WnV)
垢版 |
2024/12/02(月) 00:25:56.92ID:7m/pDVQD0
#普通のクリックが効かない時(紐づいてるスクリプトを実行)
#---------------------------------------------------------------------------
btn=driver.find_element(By.CLASS_NAME,'xxxBtn')
driver.execute_script('arguments[0].click();', btn)
#同じ名前の要素がある場合- 2つ目をクリック
#---------------------------------------------------------------------------
elems=driver.find_elements(By.CLASS_NAME,'xxx_btn')
elems[1].click()
375デフォルトの名無しさん (ワッチョイ 6fad-5WnV)
垢版 |
2024/12/02(月) 04:52:39.52ID:7m/pDVQD0
要素が存在していても、フォーカスが違う時はsend_keysなどは動かない
親要素をクリックするとかしてから行う
oya=driver.find_element(By.xx,親要素)
oya.click()
--
フォーカスが別フレームなら戻すとか
is_displayed, driver.switch_to.frame, ActionChains(キー送信等で使う) とかも参照して
(いつもと違うのが(ポップアップみたいのが)、出てくると、あれ動かないみたいになる..はまるのをつぶすのはめんどくさい)
あと、XPathはHTMLの構造に依存するから、表示とかが変わると、同じにはならないから、使わない
>getで再度サイトにアクセスすると書き込めるようになるときがあります
これに当てはまる?
2024/12/02(月) 20:05:34.47ID:s4V+qYg3d
ハイパーモダンpythonは後の章に行くにつれて
話が繋がってくる
最初がきつい
377デフォルトの名無しさん (ワッチョイ ecac-Dj8N)
垢版 |
2024/12/03(火) 03:51:20.88ID:N6mUJPJA0
コボル、BASIC から初めて次にC/C++にしたが
考えるとPythonのカッコ使わない記述は古典すぎる
コボル用の原稿用紙みたいなマス目の紙がうってたが
昔風の記法は紙に書くとかエディタにカッコの認識機能がなかったとかで
昔はよかったがいまは逆に不利では
378デフォルトの名無しさん (ワッチョイ 6fad-5WnV)
垢版 |
2024/12/03(火) 05:57:29.53ID:e3hO3RHt0
COBOLのインデントはただの見た目。pythonはインデントで認識するから、
見た目は同じでも違う
2024/12/03(火) 09:41:07.24ID:kLLVN+mm0
>>364
人の目にページが表示されるまで細かくソースが変化するサイトがあって期待したエレメントを誤認識してクリック空振りとかあり得る
自分はクリック処理に入る前にページを完全に読み込んだか判断するようにしている
例えば「ここをクリック」のようなページ読み込み完了が確認できるような文字列がソースにあるか条件にし無ければwaitしてループみたいなの(できれば無限ループ避けに回数超えたらエラー終了とかいれて)
2024/12/03(火) 09:42:35.91ID:KPEF2J76H
>>377
何ゆってんの
カッコが要らないことはプログラミングの革命だよ
カッコをタイプするのに全プログラマが消費している手間と時間が年間どれだけになるか計算しろ
2024/12/03(火) 10:08:04.98ID:/RopnMZy0
IDE的なものを使ったことがないのかな?

IDEがサポートしてくれない手動アンインデント・手動フォーマットが必要なPythonのほうがタイプ量は多くなるぞ
382デフォルトの名無しさん (ワッチョイ 3f2a-L1ek)
垢版 |
2024/12/03(火) 10:08:51.03ID:d8XC/DSv0
日暮れて途遠し。関数のカッコも許すまじ。
2024/12/03(火) 10:11:04.18ID:N6mUJPJA0
もともとはカッコがなかったはずだ
アセンブラ FORTRAN Pascalとか
古典的なほど一行一文で必要性がひくい
2024/12/03(火) 12:51:02.33ID:pPfZPcder
364ですが皆さんアドバイスありがとうございます!
時間のあるときにいろいろ試したいと思います
385デフォルトの名無しさん (ワッチョイ 3f8e-gAXR)
垢版 |
2024/12/03(火) 16:08:05.47ID:UmbELZIZ0
>>380
馬鹿過ぎて話しにならない
そんな理屈だとBASICとかが革命ってことになるだろ
386デフォルトの名無しさん (ワッチョイ 6e2a-L1ek)
垢版 |
2024/12/03(火) 16:48:38.38ID:7+FAz+IT0
馬鹿げた話に馬鹿と突っ込むのは馬鹿っぽく見える。
387デフォルトの名無しさん (ブーイモ MMba-cbcK)
垢版 |
2024/12/05(木) 19:12:25.57ID:f+d6ZP2RM
>>385
タブや改行と半角スペースを混同して語るのは痛いな
388デフォルトの名無しさん (ブーイモ MMba-cbcK)
垢版 |
2024/12/05(木) 19:15:05.19ID:f+d6ZP2RM
BASICが詰めた見た目にできるのは構文解析が優秀だからだぞ?

アセンブラなんて1行、1命令だから。
2024/12/05(木) 20:01:54.48ID:m3F946dq0
>>377
コピペした時のインデントが人間にしかわからんねえしな
欠陥言語だよ
2024/12/05(木) 20:39:01.52ID:v//ZhfaU0
BASICでインデントすると、貴重なメモリがインデント用に減っていく
391デフォルトの名無しさん (ワッチョイ 46df-cbcK)
垢版 |
2024/12/05(木) 23:43:24.89ID:PwliRaIW0
>>390
いつのパソコンだよw
392デフォルトの名無しさん (ワッチョイ 46df-cbcK)
垢版 |
2024/12/05(木) 23:44:48.64ID:PwliRaIW0
>>389
ブロックを括弧にしたのは可読性が下がったので何とも言えない

START、ENDはくどいがこれはこれでわかりやすい
393デフォルトの名無しさん (ワッチョイ 46df-cbcK)
垢版 |
2024/12/05(木) 23:45:08.94ID:PwliRaIW0
BEGIN、ENDの間違い
394デフォルトの名無しさん (ワッチョイ 46df-cbcK)
垢版 |
2024/12/05(木) 23:45:53.80ID:PwliRaIW0
>>389
ブロックを括弧にしたのは可読性が下がったので何とも言えない

BEGIN、ENDはくどいがこれはこれでわかりやすい
2024/12/06(金) 05:18:04.91ID:AALfMO070
AIでスラスラ
2024/12/06(金) 05:54:20.93ID:7NYpJagN0
byteをhex()で変換すると長い文字列になって読みにくいので、
2文字ずつに区切る方法を誰か書いてないかなと検索したら、
AIが横取りして完全解答を示してきた
2024/12/06(金) 07:54:25.37ID:rsMlOC0k0
>>394
分かりにくい
398デフォルトの名無しさん (ワッチョイ 46df-cbcK)
垢版 |
2024/12/06(金) 16:36:41.30ID:JVxC5Ump0
>>397
括弧は単に慣れているから変に思わないだけ
2024/12/07(土) 14:06:32.90ID:8ekNK8XTa
dataをremで並べるのとかな
2024/12/08(日) 03:04:53.14ID:uhFONOyF0
>>398
言い方を変えると慣れない
つまり使いづらいし分かりにくい
2024/12/08(日) 15:49:08.95ID:s3gWwTLZ0
パイチョン嫌い
でも開発環境めっちゃ整備されてるな
perlがここまで来ていたら
2024/12/08(日) 15:56:53.41ID:am0IRcwN0
perlとは方向性がかなり違うからなあ

短期的にはperlの方が楽だけど、結局長い目で見るとpythonできっちり書いた方が楽
perlは例外的なケースもよしなに吸収しといてくれるけど、
pythonに移植してみると気付いてなかった問題が顕在化したりする
403デフォルトの名無しさん (ワッチョイ 8707-N88W)
垢版 |
2024/12/08(日) 16:17:35.04ID:YHg2sc8K0
Pythonはwindowsで長いパス(最長はしらんがおそらく3万字とか)に対応してるので
ほぼその目的で利用
C/C++とそれに似てるPHPなどのほうが使いやすいのでこっちで書いてから
AI翻訳+修正すればいいとわかった
2024/12/08(日) 16:21:58.87ID:am0IRcwN0
NASがext4なので、フルパスで255byteしか使えない
普通にきつい
2024/12/08(日) 16:35:08.33ID:koJ73GUG0
turtleモジュールの亀かわいい
406デフォルトの名無しさん (アウアウエー Sa9f-zpgV)
垢版 |
2024/12/09(月) 11:02:22.67ID:uh4vUAM3a
PHPはCと表面上は似てるけど全然違う詐欺みたいな言語だからな
407デフォルトの名無しさん (ワッチョイ dff4-tB0+)
垢版 |
2024/12/09(月) 13:23:03.85ID:wWCmXoxS0
科学 + 5ch

【AI】AIはわずか2時間の対話で人間の性格をコピーできる [すらいむ★]
https://egg.5ch.net/test/read.cgi/scienceplus/1733576027/

コメントに面白いことが書かれている
2024/12/09(月) 13:50:05.32ID:QWMKV9/M0
最近のプログラミングというのはAIに書かせたコードを切り貼りする作業なわけだが、
その点ではブロックをインデントで表現するスタイルはあまり相性良くないと思うわ
コピペ後に手修正が発生することが多い
もう一息でAIによる提案を反映するところまでAIにお任せで問題なくなるだろうけど、現状ではまだ人手での反映の方が結局早いことが多いんだよな
2024/12/09(月) 16:14:44.29ID:sn8s4H5G0
たしかにLLMはインデント苦手なんだよな
2024/12/09(月) 19:15:26.73ID:ktJRf3El0
b = b'\x00'

with open('out.bin', 'wb') as f:
 print(b, file=f)

TypeError: a bytes-like object is required, not 'str'
なんで駄目なんだろう
411デフォルトの名無しさん (スフッ Sdff-Dl9P)
垢版 |
2024/12/09(月) 20:37:30.69ID:9JwnAf8xd
write
2024/12/09(月) 20:40:31.86ID:gu5LX463H
>>410
そりゃあなた、print()は文字を表示する関数ですから
文字に変換できないオブジェクトを渡すとそうなります
普通にf.write(b)じゃダメなの?
2024/12/09(月) 20:48:18.70ID:ktJRf3El0
"b'\x00'" という文字列に変換してwbする挙動になるのか

textはwrite使わずにprintの方がいろいろ便利だけど、
bytesで便利なことはなさそうだから、普通にwriteだな
414デフォルトの名無しさん (ワッチョイ 67ad-rb3w)
垢版 |
2024/12/10(火) 00:27:38.32ID:YQiWPJG/0
AIに聞けば、おしえてくれる。聞くまでもないんだけど
このエラーは、print関数を使ってbytesオブジェクトをファイルに書き込もうとしたために発生しています。
print関数は文字列を出力するために設計されていますが、bytesオブジェクトを扱う場合には文字列ではなくバイト列として処理する必要があります。
ファイルにbytesオブジェクトを直接書き込むためには、
file.write()メソッドを使用する必要があります。
2024/12/10(火) 00:32:59.18ID:dYoxCOIq0
このへんもperl脳なんだよな
openする時にテキストかバイナリか指定して、
出力はなんでもprint
暗黙で変換が入るとかしない
416410 ではない (ワッチョイ 872a-hkg+)
垢版 |
2024/12/10(火) 09:50:53.98ID:6plb36uZ0
a bytes-like object is required, not 'str'
'str' ではなく、bytes-like オブジェクトが必要

ってエラー文がおかしくないか。>>412 や AI の説明は

bytes-like オブジェクトではなく、'str' が必要

と読める。
2024/12/10(火) 10:10:38.83ID:ucbgABp/0
いや、その訳の方がおかしいだろ。
2024/12/10(火) 10:34:29.33ID:/OZpuXS/0
pythonで数式処理システム丸ごとパクリました
rustもいるのでモジュールはこっちでできます
というのはpythonの幸運だったんだろうな
419416 (ワッチョイ 872a-hkg+)
垢版 |
2024/12/10(火) 10:53:36.34ID:6plb36uZ0
>>417
そうなの? オレは他の訳を思い付かないのだけど、正しくはどう訳されるべきなの?
2024/12/10(火) 11:00:10.65ID:ucbgABp/0
>>419
スマン。おかしいのは訳でなくて解釈のほう。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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