!extend:default:vvvvv:1000:1024
!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のソースコードを5ちゃんに直貼はインデントが崩壊するので、
↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/ Run Code機能あり。
ttp://ideone.com/ デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Pythonオフィシャルサイト http://www.python.org/
◇まとめwiki ttp://python.rdy.jp/
●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その55
https://mevius.5ch.net/test/read.cgi/tech/1633070807/
〇前スレ〇 Pythonのお勉強 Part65
https://mevius.5ch.net/test/read.cgi/tech/1621749112/
次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ###
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
Pythonのお勉強 Part66
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 9f02-4fXk)
2021/11/15(月) 18:59:43.37ID:f2uNQEAt0683デフォルトの名無しさん (ワッチョイ ce3b-p8sJ)
2022/04/28(木) 16:16:26.63ID:vi5k4+uL0 そんな変なのはpython2に置いてきた
684デフォルトの名無しさん (ワッチョイ 9101-/zPW)
2022/04/28(木) 16:23:24.74ID:7fcK0MfL0 >>682
srt1="xe3"
srt2="x81"
srt3="x82"
です。失礼しました。
とある状況下で、上のような文字列3つを
b'\xe3\x81\x82'
みたいにbytearray化させてデコードしなければならないのですが、
それができず・・・
srt1="xe3"
srt2="x81"
srt3="x82"
です。失礼しました。
とある状況下で、上のような文字列3つを
b'\xe3\x81\x82'
みたいにbytearray化させてデコードしなければならないのですが、
それができず・・・
685デフォルトの名無しさん (ワッチョイ 8e46-gBP2)
2022/04/28(木) 16:48:58.45ID:CB8RhFnM0 int(str1[1:], 16)とかで数値にしてbytes([227, 129, 130])
686デフォルトの名無しさん (アウアウエー Sa6a-qwca)
2022/04/28(木) 16:57:16.91ID:7NZvEQkTa 足せば良い
bytes=a+b
bytes=a+b
687デフォルトの名無しさん (ワッチョイ 8e46-gBP2)
2022/04/28(木) 17:01:47.22ID:CB8RhFnM0 bytes.fromhex(str1[1:] + str2[1:] + str3[1:])でもいい
688デフォルトの名無しさん (ワッチョイ 9101-/zPW)
2022/04/28(木) 17:02:14.41ID:7fcK0MfL0689デフォルトの名無しさん (ワッチョイ 8e46-gBP2)
2022/04/28(木) 17:04:46.38ID:CB8RhFnM0 ドキュメントをよく読んで自分で調べるんだよ
https://docs.python.org/ja/3/library/stdtypes.html#bytes
https://docs.python.org/ja/3/library/stdtypes.html#bytes
690デフォルトの名無しさん (ワッチョイ 9101-/zPW)
2022/04/28(木) 17:06:46.64ID:7fcK0MfL0691デフォルトの名無しさん (ワッチョイ f62c-MOU1)
2022/04/28(木) 17:15:23.95ID:hPMohmUF0 b'\xe3\x81\x82'
srt1="xe3"
srt2="x81"
srt3="x82"
xe3, x81, x82 など、x だけは付かない。
16進数表示は普通、0x
例えば、Ruby で、
"あ".each_byte { |byte| p byte, byte.to_s( 16 ) }
出力
227, "e3"
129, "81"
130, "82"
単に、10進数の129 は、16進数の81 と言うだけ
srt1="xe3"
srt2="x81"
srt3="x82"
xe3, x81, x82 など、x だけは付かない。
16進数表示は普通、0x
例えば、Ruby で、
"あ".each_byte { |byte| p byte, byte.to_s( 16 ) }
出力
227, "e3"
129, "81"
130, "82"
単に、10進数の129 は、16進数の81 と言うだけ
692デフォルトの名無しさん
2022/04/29(金) 05:19:00.84ID:1KLK/zAN https://techiedelight.com/compiler/?Whtw
ラジオボタン0-1
ラジオボタン0-2
が選択状態にならないのですがなぜなんでしょう?
マウスオーバーでようやく選択状態になります
ラジオボタン0-1
ラジオボタン0-2
が選択状態にならないのですがなぜなんでしょう?
マウスオーバーでようやく選択状態になります
693デフォルトの名無しさん
2022/04/29(金) 05:20:29.34ID:1KLK/zAN694デフォルトの名無しさん
2022/04/29(金) 05:45:28.60ID:1KLK/zAN695デフォルトの名無しさん (スッップ Sd70-7DrV)
2022/04/29(金) 05:49:44.90ID:9YqnfbQUd ちんちんシュッ!シュッ!シュッ!
696デフォルトの名無しさん (ワッチョイ 4661-ToA5)
2022/04/29(金) 12:10:15.61ID:PBd2dG0G0 >>694
int_vがGCされてしまうから生存期間が長いどこかに保存しておく必要がある
int_vがGCされてしまうから生存期間が長いどこかに保存しておく必要がある
697デフォルトの名無しさん
2022/04/29(金) 12:39:42.91ID:1KLK/zAN698デフォルトの名無しさん (ワッチョイ ce3b-p8sJ)
2022/04/29(金) 12:51:26.18ID:founf1iZ0 GUIっつっても、設定を変更したり入力を指定したり、
みたいなことはconfigファイルとかでやった方が便利で楽なんだよな
スライダーで値をアナログ的に変えたいとか、
モジュールとモジュールをマウスで線で繋ぐと構成がグラフィカルに表示されるとか、
本質的にGUIである必要があるもの以外はむしろGUI面倒なだけ
みたいなことはconfigファイルとかでやった方が便利で楽なんだよな
スライダーで値をアナログ的に変えたいとか、
モジュールとモジュールをマウスで線で繋ぐと構成がグラフィカルに表示されるとか、
本質的にGUIである必要があるもの以外はむしろGUI面倒なだけ
699デフォルトの名無しさん
2022/04/29(金) 14:01:05.14ID:1KLK/zAN そうなんですよね
私も少なくともpythonではGUIはほとんどやりませんね
API前提でwebアプリ化した方が後々メンテナンスしやすいし
そもそもGUIいるかどうかを後回しにできますしね
今回は友人にちょっとしたツールを作るために配布含めて最適かなと思い手を出しました
dockerでもいいですがやはり極力お手頃な手段となると
ランチャー+pythonかな、と
「これをダブルクリックすれば普通のアプリのように使える」
みたいな
私も少なくともpythonではGUIはほとんどやりませんね
API前提でwebアプリ化した方が後々メンテナンスしやすいし
そもそもGUIいるかどうかを後回しにできますしね
今回は友人にちょっとしたツールを作るために配布含めて最適かなと思い手を出しました
dockerでもいいですがやはり極力お手頃な手段となると
ランチャー+pythonかな、と
「これをダブルクリックすれば普通のアプリのように使える」
みたいな
700デフォルトの名無しさん (ワッチョイ 2701-tuCG)
2022/04/30(土) 01:50:41.94ID:64v4nlhT0 あるオブジェクトのプロパティを使いたい時にそのプロパティがNoneだった場合に例外が発生する
この問題を解決する場合どうすればいいか?
プロパティを呼び出す前にifでNoneかチェックすればいいのか?
この問題を解決する場合どうすればいいか?
プロパティを呼び出す前にifでNoneかチェックすればいいのか?
701デフォルトの名無しさん (アウアウウー Saab-un0p)
2022/04/30(土) 02:08:18.23ID:X9Bb5Kqda 例外を拾う
702デフォルトの名無しさん (ワッチョイ df0c-Nh0L)
2022/04/30(土) 07:52:07.66ID:tF/VvMGW0 try~exceptで例外処理を加えるか、if ~ == Noneでチェック。
703デフォルトの名無しさん (アウアウウー Saab-un0p)
2022/04/30(土) 08:05:06.08ID:X9Bb5Kqda 駄目条件と比較して抜けるのはpython的にはちょっとダサく見えるかもね
704デフォルトの名無しさん (アウアウウー Saab-yPy6)
2022/04/30(土) 08:19:30.91ID:RBLOnO9Wa tryの方が他の隠れたエラーも回避できるからとりあえずいいんじゃね?
例外要因がNone以外なら何らかの爪痕残して動作し続けると。
例外要因がNone以外なら何らかの爪痕残して動作し続けると。
705デフォルトの名無しさん (ワッチョイ 7f10-TJi1)
2022/04/30(土) 08:31:53.31ID:r/ZKILRd0 因みにNone判定は==よりもis使うほうがpythonicらしい
どっちでも同じだけど
どっちでも同じだけど
706デフォルトの名無しさん (ワッチョイ 7f02-Nt/R)
2022/04/30(土) 08:54:03.70ID:sUE68ZYJ0 ここだけでも考え方固定しとこうよ
If 〇〇 is Noneで
If 〇〇 is Noneで
707デフォルトの名無しさん (JP 0H9f-2cai)
2022/04/30(土) 10:21:03.74ID:wiaMGPVaH tensorflowでGPU計算してるんですが、
タスクマネージャー見ると4GBの専用GPUメモリしか使ってくれません
共有GPUメモリのほうが24GBあるのでそっちも使ってほしいのですが、
どうすれば共有のほうも使ってもらえるんでしょうか?
タスクマネージャー見ると4GBの専用GPUメモリしか使ってくれません
共有GPUメモリのほうが24GBあるのでそっちも使ってほしいのですが、
どうすれば共有のほうも使ってもらえるんでしょうか?
708デフォルトの名無しさん (ワッチョイ 7fcf-Vdv4)
2022/04/30(土) 10:26:35.39ID:3TsZhUq60 UnifiedMemoryが使えるGPUにする。
709デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/04/30(土) 10:32:01.67ID:yMKkpkM10 Noneは使わない方向で考えた方がいいらしい
エラー用の戻り値と正常で0や空文字列を返す場合を厳密に区別するのを忘れていつかバグる
エラー用の戻り値と正常で0や空文字列を返す場合を厳密に区別するのを忘れていつかバグる
710デフォルトの名無しさん (ワッチョイ e714-RPnk)
2022/04/30(土) 10:51:16.61ID:ymkt03N20 ページロックすればホストのメモリも使えるけど上限があった気がする
711デフォルトの名無しさん (ワッチョイ dfd3-KWE8)
2022/04/30(土) 11:14:15.89ID:XZrd/bpX0 tupleあるから成否と返り値返すのは素直に書けるけど
他みたいに標準化されてないから導入するのは躊躇する
クラスにするのもなんか野暮ったいし
他みたいに標準化されてないから導入するのは躊躇する
クラスにするのもなんか野暮ったいし
712デフォルトの名無しさん (ブーイモ MM8f-fAxq)
2022/04/30(土) 12:02:23.95ID:25RDc2CyM >>709
それはNoneと比較することの説明じゃなくてNoneを使わずに直接ifの条件に突っ込んだ場合の説明では
それはNoneと比較することの説明じゃなくてNoneを使わずに直接ifの条件に突っ込んだ場合の説明では
713デフォルトの名無しさん (ワッチョイ c72c-u3tg)
2022/04/30(土) 12:08:52.82ID:46aR4GCy0 >>700
例えばpilのimageオブジェクトにn_framesっていうプロパティがあったりなかったりする。通常はない
フォーマットを問わず静止画像だけ対象としたいとき
if hasattr(im, 'n_frames') and im.n_frames == 1:
__対象処理
else:
__非対象処理
などとする
いきなりim.n_framesを触ろうとするとあとりびゅーとゑらーにぬる
例えばpilのimageオブジェクトにn_framesっていうプロパティがあったりなかったりする。通常はない
フォーマットを問わず静止画像だけ対象としたいとき
if hasattr(im, 'n_frames') and im.n_frames == 1:
__対象処理
else:
__非対象処理
などとする
いきなりim.n_framesを触ろうとするとあとりびゅーとゑらーにぬる
714デフォルトの名無しさん (ワッチョイ 673f-lyO6)
2022/04/30(土) 14:03:39.34ID:Vilh5bg10 もしかしてPythonの文字列型って\rも\r\nも内部的に全部\nに変換してしまうのか?
改行コードが混在しているテキストファイルをバイナリで処理しなきゃいけないとか勘弁してほしいんだが
改行コードが混在しているテキストファイルをバイナリで処理しなきゃいけないとか勘弁してほしいんだが
715デフォルトの名無しさん (ワッチョイ dfd3-KWE8)
2022/04/30(土) 14:20:31.21ID:XZrd/bpX0 >>714
ioが標準動作がそうなだけでstringは各改行コードを保持する
https://docs.python.org/ja/3/library/io.html
の特にnewlineのあたり読んでみて
ioが標準動作がそうなだけでstringは各改行コードを保持する
https://docs.python.org/ja/3/library/io.html
の特にnewlineのあたり読んでみて
716デフォルトの名無しさん (ワッチョイ 673f-lyO6)
2022/04/30(土) 14:33:26.14ID:Vilh5bg10717デフォルトの名無しさん
2022/04/30(土) 14:37:18.51ID:FKqPSOQO class Hoge: pass
def hoge(): pass
ary=["string","",123,0,[1,2,3],[],{"a":1,"b":2},{},None,hoge,Hoge]
for n in ary: print(type(n),type(n).__name__)
こういうので条件分岐するとき何か罠あるかな
def hoge(): pass
ary=["string","",123,0,[1,2,3],[],{"a":1,"b":2},{},None,hoge,Hoge]
for n in ary: print(type(n),type(n).__name__)
こういうので条件分岐するとき何か罠あるかな
718デフォルトの名無しさん
2022/04/30(土) 14:56:33.01ID:FKqPSOQO class Hoge: pass
def hoge(): pass
ary=["string","",123,0,[1,2,3],[],{"a":1,"b":2},{},None,hoge,Hoge()]
res=["str","str","int","int","list","list","dict","dict","NoneType","function","Hoge"]
print([ (type(a),b,type(a).__name__==b) for a,b in zip(ary,res) if type(a).__name__==b ])
改めてやってみたらclassはtype(Hoge)で<class 'type'>を返した
条件分岐で使う多くの場合はインスタンスの方だった
def hoge(): pass
ary=["string","",123,0,[1,2,3],[],{"a":1,"b":2},{},None,hoge,Hoge()]
res=["str","str","int","int","list","list","dict","dict","NoneType","function","Hoge"]
print([ (type(a),b,type(a).__name__==b) for a,b in zip(ary,res) if type(a).__name__==b ])
改めてやってみたらclassはtype(Hoge)で<class 'type'>を返した
条件分岐で使う多くの場合はインスタンスの方だった
719デフォルトの名無しさん (ワッチョイ dfb1-mddC)
2022/04/30(土) 20:37:14.85ID:9rE3Ygx80 アンドロイドスマホにtermux入れてpythonダウンロードした。
これでスマホでpython使える。
さてぇ何しようか?w
これでスマホでpython使える。
さてぇ何しようか?w
720デフォルトの名無しさん (ワッチョイ 2701-Ap7g)
2022/05/01(日) 15:28:04.16ID:VZ3UC19t0 質問です。グーグルコラボで、ファイルをアップロード・ダウンロードして
IPYNB ファイル (.ipynb)は無事ダウンロードしたけど
IPYNB ファイル がひらけません。
教えてえらいひと!
IPYNB ファイル (.ipynb)は無事ダウンロードしたけど
IPYNB ファイル がひらけません。
教えてえらいひと!
721デフォルトの名無しさん (ワッチョイ 0702-nWZL)
2022/05/01(日) 16:46:01.72ID:Qa1o7mjl0722デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/05/01(日) 16:49:46.04ID:gTYMk0Yb0 jupyter notebookって便利か?
使いかけたけど思ってたのと違うからやめた
使いかけたけど思ってたのと違うからやめた
723デフォルトの名無しさん (オッペケ Sr5b-awiv)
2022/05/01(日) 17:00:52.50ID:9SHXjw1Br jupyter labの方が見た目がいいよ
なんか設定がおかしいみたいでf文字列閉じるときとかにクオーテーションが3つになってアアアアアアアア(怒)
なんか設定がおかしいみたいでf文字列閉じるときとかにクオーテーションが3つになってアアアアアアアア(怒)
724デフォルトの名無しさん (JP 0H9f-oqj3)
2022/05/01(日) 18:17:11.39ID:zLsUFjCyH 2022-05-01 18:14:51.136506: W tensorflow/python/util/util.cc:368] Sets are not currently considered sequences, but this may change in the future, so consider avoiding using them.
これは何を意味していますか?
毎回出るのですが不具合ないので放置してます
これは何を意味していますか?
毎回出るのですが不具合ないので放置してます
725デフォルトの名無しさん (オッペケ Sr5b-awiv)
2022/05/01(日) 18:24:13.28ID:/FY9XBISr 集合は、シークエンスと考慮されている電流ではありません
しかし未来でわ変化する可能性があります、ですのでそれらを使うことは避けることを考えておいてください
しかし未来でわ変化する可能性があります、ですのでそれらを使うことは避けることを考えておいてください
726デフォルトの名無しさん (ワッチョイ bf2d-VGkv)
2022/05/01(日) 19:06:32.91ID:0ggTu6P00 >>720
VSCodeで開ける
VSCodeで開ける
727デフォルトの名無しさん (ワッチョイ bf2d-VGkv)
2022/05/01(日) 19:14:34.49ID:0ggTu6P00 >>724
set型(集合)は現状sequence(listとかtensorとか:[i]で中身参照できるヤツ)と見做されないが、これは将来変わる可能性あるから直したほうがいいゾ、と言っている
バージョンアップで不具合が出るかもしれない
set型(集合)は現状sequence(listとかtensorとか:[i]で中身参照できるヤツ)と見做されないが、これは将来変わる可能性あるから直したほうがいいゾ、と言っている
バージョンアップで不具合が出るかもしれない
728デフォルトの名無しさん (JP 0H9f-LS7f)
2022/05/01(日) 19:19:07.90ID:SE1vC0S9H729デフォルトの名無しさん (ワッチョイ 872c-6Jp9)
2022/05/01(日) 22:11:45.77ID:S5MUx0uW0 多くの言語では、辞書・集合は順序不定なので、
順序アクセスはできないか、その度に変わる
だから、キー・値のみのインターフェースにしている
順序アクセスはできないか、その度に変わる
だから、キー・値のみのインターフェースにしている
730デフォルトの名無しさん (ワッチョイ 8733-Nh0L)
2022/05/01(日) 22:24:31.09ID:tQAUcym90 Python3.7以上の辞書なら順序は保証される
731デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/05/01(日) 22:31:54.05ID:gTYMk0Yb0 順序が推測できることが脆弱性になってなかったっけ
732デフォルトの名無しさん (アウアウウー Saab-un0p)
2022/05/01(日) 23:07:38.45ID:n5o6XFHLa 保証されるけど、集合でそんなもん期待するのはちよっと心が貧しい
733デフォルトの名無しさん (ワッチョイ a763-3IX0)
2022/05/02(月) 00:17:27.20ID:zZIONtog0734デフォルトの名無しさん
2022/05/02(月) 07:43:06.25ID:QBTh3ay3 プロセスの実行中、
辞書もしくは配列に値を入れて消してを繰り返しするのって
プロセス実行時間が長くなろうがメモリって増えていきませんよね?
items=[1つ100バイト未満の文字列を1000個、数秒置きに入れ替え]
items=[]で初期化したりitems.pop(),item.append()で追加したりで更新
一応24時間実行しっぱで確認してみたのですが、そこまで変わりませんでした
勝手に開放してくれるのでしょうか
辞書もしくは配列に値を入れて消してを繰り返しするのって
プロセス実行時間が長くなろうがメモリって増えていきませんよね?
items=[1つ100バイト未満の文字列を1000個、数秒置きに入れ替え]
items=[]で初期化したりitems.pop(),item.append()で追加したりで更新
一応24時間実行しっぱで確認してみたのですが、そこまで変わりませんでした
勝手に開放してくれるのでしょうか
735デフォルトの名無しさん (ワッチョイ e714-RPnk)
2022/05/02(月) 08:20:31.28ID:utX47pRC0 >>734
値が参照されなくなった時点で開放されるはず。実際のタイミングはGC次第?
値が参照されなくなった時点で開放されるはず。実際のタイミングはGC次第?
736デフォルトの名無しさん (ワッチョイ 7f37-KWE8)
2022/05/02(月) 08:50:01.10ID:fxcianp60737デフォルトの名無しさん
2022/05/02(月) 09:05:28.53ID:QBTh3ay3738デフォルトの名無しさん (アウアウウー Saab-nj6J)
2022/05/02(月) 09:24:15.36ID:8dvAAWOXa739デフォルトの名無しさん (ワッチョイ 7f37-KWE8)
2022/05/02(月) 10:19:27.63ID:fxcianp60 ordered-setって勝手に大小並ぶんじゃなくてエントリ順維持なんだ
なんかうれしくない
なんかうれしくない
740デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/05/02(月) 10:23:15.15ID:2DpQa6LB0 'りんご'と'みかん'はどうやって大小区別するんだ
741デフォルトの名無しさん (アウアウウー Saab-nj6J)
2022/05/02(月) 11:07:53.86ID:8dvAAWOXa742デフォルトの名無しさん (ワッチョイ e701-awiv)
2022/05/02(月) 11:15:17.59ID:gz0EbZLn0 哲学
743デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/05/02(月) 11:24:39.08ID:2DpQa6LB0 global order
744デフォルトの名無しさん (ワッチョイ 7f37-KWE8)
2022/05/02(月) 11:42:17.68ID:fxcianp60745デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/05/02(月) 11:55:01.66ID:2DpQa6LB0 集合は値を持たない辞書
集合の無い言語で、値は要らないけどとりあえず1とか入れてkeyだけで管理する、
みたいなことをやることが結構あるので、値なし版も用意された
存在しないkeyを指定するとエラーになるめんどくささは辞書と同じ
集合の無い言語で、値は要らないけどとりあえず1とか入れてkeyだけで管理する、
みたいなことをやることが結構あるので、値なし版も用意された
存在しないkeyを指定するとエラーになるめんどくささは辞書と同じ
746デフォルトの名無しさん (アウアウウー Saab-nj6J)
2022/05/02(月) 12:12:58.18ID:8dvAAWOXa >>740
そういうのは文字コード順なり比較関数を与えるなりすればいいだけかと
そういうのは文字コード順なり比較関数を与えるなりすればいいだけかと
747デフォルトの名無しさん (ワッチョイ dff7-TUWr)
2022/05/02(月) 13:07:09.36ID:ZthOcqCz0 在日は自分に不都合なことは
全て差別と言う。
だったら半島へ帰れよクズども!
極悪非道の在日どもは皆殺しにすべき!
全て差別と言う。
だったら半島へ帰れよクズども!
極悪非道の在日どもは皆殺しにすべき!
748デフォルトの名無しさん (ワッチョイ 7f63-Nh0L)
2022/05/02(月) 17:26:08.70ID:t8liBSRX0 クズなネトウヨには帰る場所もない
殺処分してやるのがせめてもの慈悲
殺処分してやるのがせめてもの慈悲
749デフォルトの名無しさん (ワッチョイ 075f-tjCn)
2022/05/02(月) 20:07:27.95ID:tq0eJ7pv0 日本人が韓国に住みながら韓国マジクソ、韓国人死ねばいいのにって言ってたらお前なんて言うの?
750デフォルトの名無しさん (ワッチョイ 2701-I+xZ)
2022/05/02(月) 21:20:52.22ID:srM4fb0r0 >>749
「スレタイ読めよ」って言うだろうね。
「スレタイ読めよ」って言うだろうね。
751デフォルトの名無しさん (ワッチョイ 7fda-w47B)
2022/05/02(月) 21:24:19.62ID:wJauN5Uz0 >>750
一票❤
一票❤
752デフォルトの名無しさん (ワッチョイ 2701-tuCG)
2022/05/03(火) 02:00:07.03ID:P2nTfFou0 cssセレクターでspanタグに囲まれているかどうかを問わないってどうやって指定すんの?
最悪xpathでもいいけど
最悪xpathでもいいけど
753デフォルトの名無しさん (ワッチョイ 2701-tuCG)
2022/05/03(火) 03:46:30.15ID:P2nTfFou0 テーブルのスクレイピングをしててtrをforループで回しながらその中のtdの中にあるbr入りのtextを取りたいけどそのtrのうちの一つだけtdの中が直接textじゃなくてspan > dになってて、そのdタグの中にtextがある
それでどんなコードを書くかで詰んでる
beautifusoup4
誰か分かる?
それでどんなコードを書くかで詰んでる
beautifusoup4
誰か分かる?
754デフォルトの名無しさん (ワッチョイ 872c-6Jp9)
2022/05/03(火) 05:03:35.73ID:UnZpzFGu0 tr > td で、ループ処理する
そこで、もし、tr > td が、span > div を内包していたら、そこからテキストを取得する
そこで、もし、tr > td が、span > div を内包していたら、そこからテキストを取得する
755デフォルトの名無しさん (JP 0H9f-NU3h)
2022/05/03(火) 09:18:26.12ID:IxHOa5QLH 俺はいつもテキスト取得からfind位置取得で切り出しだなあ
756デフォルトの名無しさん (ワッチョイ 2701-tuCG)
2022/05/03(火) 11:52:36.28ID:P2nTfFou0 ごめん分からなかったんでtryでcss selectorで'td b'検索してAttributeError出たらexceptで単に'td'で検索かけるようにしたわ
それで得られたTagオブジェクトに.get_text(',').strip(',')してようするに</br>で区切ってlistにした
例外処理の多用は良くないと聞いたような気がするけどまぁいいよね
それで得られたTagオブジェクトに.get_text(',').strip(',')してようするに</br>で区切ってlistにした
例外処理の多用は良くないと聞いたような気がするけどまぁいいよね
757デフォルトの名無しさん (ワッチョイ df01-WB4i)
2022/05/03(火) 12:09:25.14ID:PFPUtHlZ0 >>753
brを改行にしたいということなら手動で改行入れる必要がある(pタグとかも)
for x in soup.select('tr td'):
for node in x.select('br'):
node.insert_before('\n')
print(x.text.strip())
brタグが入ったままのinnerHTMLが欲しいのなら
for x in soup.select('tr td:not(:has(span d)), tr td span d'):
print(x.decode_contents())
brを改行にしたいということなら手動で改行入れる必要がある(pタグとかも)
for x in soup.select('tr td'):
for node in x.select('br'):
node.insert_before('\n')
print(x.text.strip())
brタグが入ったままのinnerHTMLが欲しいのなら
for x in soup.select('tr td:not(:has(span d)), tr td span d'):
print(x.decode_contents())
758デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/05/03(火) 12:18:27.54ID:2dvea2Ox0 テーブルはちゃんと規則通りに書かれてることが多いし、テーブルの中身にしか興味ないから、
いきなりpandasにしてもうまくいく
問題はずらずら書かれてるケースで、特徴的なタグを見つけようにもうまく行かない
人間があれこれ考えて駄目なんだから何かのモジュールで対応できる訳もない
専用にきっちり書いてもマイナーチェンジされるとメンテ必要になるし、
余分に出力される程度にしておいて人間の判断を入れる、に倒す
いきなりpandasにしてもうまくいく
問題はずらずら書かれてるケースで、特徴的なタグを見つけようにもうまく行かない
人間があれこれ考えて駄目なんだから何かのモジュールで対応できる訳もない
専用にきっちり書いてもマイナーチェンジされるとメンテ必要になるし、
余分に出力される程度にしておいて人間の判断を入れる、に倒す
759デフォルトの名無しさん (ワッチョイ 2701-tuCG)
2022/05/03(火) 12:59:02.27ID:P2nTfFou0 >>757
なるほどdecode_contents()で内側のhtmlをstring型で取れるのか
そしてhasとかnotや,の使い方も学べた
これで文字列処理するのが簡単で良さそうだね
brは改行にしたいわけじゃなくて単にbr区切りで関係性の薄い情報が書かれていたから前後で分裂させたかっただけ
最初の例が難しいな
クラスオブジェクトがミュータブルだからnodeに対しての操作がxにも影響を及ぼしてる?
なるほどdecode_contents()で内側のhtmlをstring型で取れるのか
そしてhasとかnotや,の使い方も学べた
これで文字列処理するのが簡単で良さそうだね
brは改行にしたいわけじゃなくて単にbr区切りで関係性の薄い情報が書かれていたから前後で分裂させたかっただけ
最初の例が難しいな
クラスオブジェクトがミュータブルだからnodeに対しての操作がxにも影響を及ぼしてる?
760デフォルトの名無しさん (ワッチョイ df01-WB4i)
2022/05/03(火) 15:07:34.95ID:PFPUtHlZ0 >>759
ツリーを変更するメソッドは元のBeautifulSoupオブジェクト(soup)が直接変更される
xもsoupオブジェクトへの参照なので変更が反映される
反映したくなければ部分的にコピーするか新しくsoupオブジェクトを生成するか
↓インデントが間違ってたので修正
for x in soup.select('tr td'):
for node in x.select('br'):
node.insert_before('\n')
print(x.text.strip())
ツリーを変更するメソッドは元のBeautifulSoupオブジェクト(soup)が直接変更される
xもsoupオブジェクトへの参照なので変更が反映される
反映したくなければ部分的にコピーするか新しくsoupオブジェクトを生成するか
↓インデントが間違ってたので修正
for x in soup.select('tr td'):
for node in x.select('br'):
node.insert_before('\n')
print(x.text.strip())
761デフォルトの名無しさん (JP 0Hcf-PwpY)
2022/05/04(水) 10:23:15.33ID:pkoGSX5+H 質問です。
macOSを使っています・
pythonのバージョンを調べるために、
「python -v」
を入力すると
/Users/xxxxxxx/.pyenv/shims/python: line 8: /usr/local/opt/pyenv/bin/pyenv: No such file or directory
と表示されます。
それで
「type python」
を入力すると
python is /Users/xxxxxxx/.pyenv/shims/python
と表示されますので、pythonは在ります。
なぜ、「python -v」が
No such file or directory
になるのでしょうか?
どうすれば良いのでしょうか?
macOSを使っています・
pythonのバージョンを調べるために、
「python -v」
を入力すると
/Users/xxxxxxx/.pyenv/shims/python: line 8: /usr/local/opt/pyenv/bin/pyenv: No such file or directory
と表示されます。
それで
「type python」
を入力すると
python is /Users/xxxxxxx/.pyenv/shims/python
と表示されますので、pythonは在ります。
なぜ、「python -v」が
No such file or directory
になるのでしょうか?
どうすれば良いのでしょうか?
762デフォルトの名無しさん (エアペラ SD4f-ow/s)
2022/05/04(水) 10:46:01.03ID:8Q1g3mAXD /usr/local/opt/pyenv/bin/pyenv
がないから
がないから
763デフォルトの名無しさん (ワッチョイ a710-vnhZ)
2022/05/04(水) 11:12:58.06ID:GAB8HZoP0 2^17179869183って計算できる?
764デフォルトの名無しさん (アウアウウー Saab-06QL)
2022/05/04(水) 11:39:04.52ID:KgzdHtkKa >>763
マルチすんな、ハゲ
マルチすんな、ハゲ
765デフォルトの名無しさん
2022/05/04(水) 14:53:35.01ID:272uYDtq エンドポイントを考えるとき
(1)http://hogehoge.com/items
と
(2)http://hogehoge.com/items/
末尾のスラッシュ有り無しどちらでもいいと思ってた
けどパスパラメータにパス(例/path/my/dir)を与えたい(こんなケースあるのかは知らないが)場合
(2)は
http://hogehoge.com/items//path/my/dir
(1)は
http://hogehoge.com/items/path/my/dir
パースできたとしても視認性落ちる
なので(2)の"/items/"が正しいとすると
http://hogehoge.com
のみのurlであってもスラッシュで閉じた方がいいのか
webフレームワーク側とかでスラッシュ有りに統一してた場合に野暮になりそうな気が
(1)http://hogehoge.com/items
と
(2)http://hogehoge.com/items/
末尾のスラッシュ有り無しどちらでもいいと思ってた
けどパスパラメータにパス(例/path/my/dir)を与えたい(こんなケースあるのかは知らないが)場合
(2)は
http://hogehoge.com/items//path/my/dir
(1)は
http://hogehoge.com/items/path/my/dir
パースできたとしても視認性落ちる
なので(2)の"/items/"が正しいとすると
http://hogehoge.com
のみのurlであってもスラッシュで閉じた方がいいのか
webフレームワーク側とかでスラッシュ有りに統一してた場合に野暮になりそうな気が
766デフォルトの名無しさん (ワッチョイ df79-7Nr3)
2022/05/04(水) 15:49:59.91ID:h7+OiRil0 >>765考え方がおかしい
普通urlに部分パスを追加する時はパラメータが/で始まるならルートからの絶対パス、そうでなければカレントの相対パスって意図になる
../path~みたいな親を遡る相対パスが与えられた場合も考慮すると文字列の追加に留まらずパスを正規化せざるを得ない
視認性とかの問題ではない
普通urlに部分パスを追加する時はパラメータが/で始まるならルートからの絶対パス、そうでなければカレントの相対パスって意図になる
../path~みたいな親を遡る相対パスが与えられた場合も考慮すると文字列の追加に留まらずパスを正規化せざるを得ない
視認性とかの問題ではない
767デフォルトの名無しさん
2022/05/04(水) 16:30:47.72ID:272uYDtq >>766
部分パスがちょっとわからないからあれだけど
ルーティングによるのでは?と思う
例えばクエリパラメータで
http://hogehoge.com/items?path=/path/my/dir
とした場合は
http://hogehoge.com/items/?path=/path/my/dir
でも問題ないけどパスパラメータ>>765だと
どっち?ってならないかな(もちろんドキュメントに準じればいいだけだが。)
そういうことではなくて?
部分パスがちょっとわからないからあれだけど
ルーティングによるのでは?と思う
例えばクエリパラメータで
http://hogehoge.com/items?path=/path/my/dir
とした場合は
http://hogehoge.com/items/?path=/path/my/dir
でも問題ないけどパスパラメータ>>765だと
どっち?ってならないかな(もちろんドキュメントに準じればいいだけだが。)
そういうことではなくて?
768デフォルトの名無しさん (テテンテンテン MM7f-LJ0R)
2022/05/04(水) 20:50:47.03ID:mmwxiGlBM 柏野雄太は名を挙げたね
769デフォルトの名無しさん (ワッチョイ 872c-6Jp9)
2022/05/04(水) 23:36:56.20ID:AJMM67e40 >>761
漏れは、Windows 10, WSL2, Ubuntu 18.04 に、
日本人が作った、多言語バージョンマネージャーのanyenv で、
ruby, node.js を入れているけど、
ruby -v
ruby 2.6.6
node -v
v14.18.1
which ruby
/home/ユーザー名/.anyenv/envs/rbenv/shims/ruby
which node
/home/ユーザー名/.anyenv/envs/nodenv/shims/node
anyenv と同様のツールに、asdf もある
漏れは、Windows 10, WSL2, Ubuntu 18.04 に、
日本人が作った、多言語バージョンマネージャーのanyenv で、
ruby, node.js を入れているけど、
ruby -v
ruby 2.6.6
node -v
v14.18.1
which ruby
/home/ユーザー名/.anyenv/envs/rbenv/shims/ruby
which node
/home/ユーザー名/.anyenv/envs/nodenv/shims/node
anyenv と同様のツールに、asdf もある
770デフォルトの名無しさん (アウアウエー Sa9f-xCbs)
2022/05/04(水) 23:39:37.70ID:8rho1RVna 2**21 = 2**3 * 2**9 * 2**9
771デフォルトの名無しさん (ワッチョイ 8701-6Jp9)
2022/05/05(木) 02:32:35.30ID:FeY8iOM40 高度IT人材、富士通は最大年収3500万円へ
AI人材の獲得に超本気 NECが新人事制度を9人に適用、富士通は最大年収3500万円へ
【年収3500万円も】富士通、「ジョブ型」人事制度を導入 幹部社員から 高度IT人材
来年度から副業解禁 人材多様化へ―大同生命次期社長
第一生命HD、副業解禁 約1万5000人対象
第一生命HD、副業解禁 1万5000人対象―大手生保初
IHI、国内8000人の副業解禁 重厚長大企業も転機
IHI、社外兼業を解禁 社内副業もルール化
AI人材の獲得に超本気 NECが新人事制度を9人に適用、富士通は最大年収3500万円へ
【年収3500万円も】富士通、「ジョブ型」人事制度を導入 幹部社員から 高度IT人材
来年度から副業解禁 人材多様化へ―大同生命次期社長
第一生命HD、副業解禁 約1万5000人対象
第一生命HD、副業解禁 1万5000人対象―大手生保初
IHI、国内8000人の副業解禁 重厚長大企業も転機
IHI、社外兼業を解禁 社内副業もルール化
772デフォルトの名無しさん (ワッチョイ df3b-mZCL)
2022/05/05(木) 13:57:31.01ID:oa9SITA90 sorted(list, key=lambda x: x.val)
は
sorted(list, key=attrgetter('val'))
と書いた方が見やすいけど、importが要るのがなあ
は
sorted(list, key=attrgetter('val'))
と書いた方が見やすいけど、importが要るのがなあ
773デフォルトの名無しさん
2022/05/05(木) 20:34:57.56ID:Bc4kCDNA 行が増えるのが嫌って感じではないなら
普通にlambda x: x.valの部分を置き換えてしまえばいいのでは
import pandas as pd
class X:
def __init__(self,val):
self.x=11
self.val=val
_getattr=lambda n:lambda x:getattr(x,n)
ary=[X(6),X(3),X(2),X(7)]
print([ n.val for n in ary ])
ary=sorted(ary, key=_getattr('val'))
print([ n.val for n in ary ])
#[6, 3, 2, 7]
#[2, 3, 6, 7]
普通にlambda x: x.valの部分を置き換えてしまえばいいのでは
import pandas as pd
class X:
def __init__(self,val):
self.x=11
self.val=val
_getattr=lambda n:lambda x:getattr(x,n)
ary=[X(6),X(3),X(2),X(7)]
print([ n.val for n in ary ])
ary=sorted(ary, key=_getattr('val'))
print([ n.val for n in ary ])
#[6, 3, 2, 7]
#[2, 3, 6, 7]
774デフォルトの名無しさん (ワッチョイ df3b-ThZr)
2022/05/05(木) 20:40:43.19ID:oa9SITA90 lambdaは強力です
lambdaを使うとこんなこともできる
的な記事はよく見るけど、結局lambda以外の方法の方が綺麗で、
lambdaは苦し紛れ感がある
lambdaを使うとこんなこともできる
的な記事はよく見るけど、結局lambda以外の方法の方が綺麗で、
lambdaは苦し紛れ感がある
775デフォルトの名無しさん (ワッチョイ dfe0-KWE8)
2022/05/05(木) 21:05:02.85ID:Rtfrs1Kx0 lambdaでちょっと書くだけでもPythonicじゃなくなる
無いものと扱った方がシンプル
基本どこでもdefは書けるから困らんし
無いものと扱った方がシンプル
基本どこでもdefは書けるから困らんし
776デフォルトの名無しさん (ワッチョイ df3b-ThZr)
2022/05/05(木) 21:18:45.73ID:oa9SITA90 mapとかfilterも使わずに済ませた方がいいことが多い
折角パワフルそうなものがあるのに、と勿体ない気もするけど、
存在を忘れた方がいいかもしれない
折角パワフルそうなものがあるのに、と勿体ない気もするけど、
存在を忘れた方がいいかもしれない
777デフォルトの名無しさん (JP 0H9f-WBwS)
2022/05/05(木) 23:03:05.31ID:Nv9wUOG5H ある計算の結果をarr[0]から順番にarr[i]に入れていきます。
計算結果が重複していたら入れません。
iは数千万以上まで行きます。
計算を進めていくと、重複判定にものすごく時間がかかってきます。
高速でできるPythonモジュールみたいなのはありますか?
計算結果が重複していたら入れません。
iは数千万以上まで行きます。
計算を進めていくと、重複判定にものすごく時間がかかってきます。
高速でできるPythonモジュールみたいなのはありますか?
778デフォルトの名無しさん (ワッチョイ 7f63-Nh0L)
2022/05/05(木) 23:04:55.42ID:cat7h5UO0 数千万を超えるデータ数なら、DB使うのが楽だろう
779デフォルトの名無しさん (ワッチョイ 7f46-Qdne)
2022/05/05(木) 23:09:30.99ID:/WvxkOMY0 とりあえずsetに入れてやってみて
だめならよく考えないと
だめならよく考えないと
780デフォルトの名無しさん (ワッチョイ df3b-ThZr)
2022/05/05(木) 23:12:35.56ID:oa9SITA90 いちいち判定せずに重複してても全部入れて、
重複判定は最後にまとめてやる
重複判定は最後にまとめてやる
781デフォルトの名無しさん (ワッチョイ df02-VZQ6)
2022/05/05(木) 23:13:57.78ID:4AFuDqVB0 巨大データだと
まずはメモリの使用状況を調べないと
メモリを使い切ってスワッピングを始めると
言語に関係なく遅くなる
まずはメモリの使用状況を調べないと
メモリを使い切ってスワッピングを始めると
言語に関係なく遅くなる
782デフォルトの名無しさん (ワッチョイ df3b-ThZr)
2022/05/05(木) 23:16:40.62ID:oa9SITA90 numpy.unique が使えれば、C言語の速度で計算できる
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【おこめ券】鈴木農相 米価維持の意図「一切ない」★2 [ぐれ★]
- 【おこめ券】鈴木農相 米価維持の意図「一切ない」 [ぐれ★]
- 【埼玉】「無免許で高速道路で事故」トラックの追突事故で10代男性死亡 無免許過失運転致死の疑いでトルコ国籍の男(22)逮捕 戸田市 [ぐれ★]
- 広島・廿日市、おこめ券配布せず 全市民に3000円現金給付へ [どどん★]
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★6 [七波羅探題★]
- 【三重】少年3人不起訴 川で友人を溺死させた疑い 津地検 [シャチ★]
- 日本人の主食、小麦(パスタ、パン、うどん)になる 米食ってる奴は非国民 わしゃうろんがええよ [402859164]
- 【実況】博衣こよりのえちえちチーズケーキを仕込み(雑談あり)🧪
- 朝日新聞記者「中国軍のレーダー照射はこめかみに銃を突きつけられたのと同じ。僕なら反撃して撃墜してる」高市 [931948549]
- 野党が“おこめ券”追及 高市早苗「鈴木農水大臣がお米券大好きなんよ」😹 [817148728]
- 【速報】1ポンド210円で日英GDP逆転(残り1.5円)...世界6位の経済規模に転落 [237216734]
- 【高市悲報】あまかいちし、「お米券は事務手数料がかかり過ぎるので、現金給付にしまーす!」 [947959745]
