当スレに★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(超初心者用) その54
https://mevius.5ch.net/test/read.cgi/tech/1623240344/
次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###
【まず1嫁】くだすれPython(超初心者用) その55
レス数が950を超えています。1000を超えると書き込みができなくなります。
2021/10/01(金) 15:46:47.17ID:9qOHXj6D
889デフォルトの名無しさん
2021/11/30(火) 23:30:55.06ID:Z8ik9ZGC import pandas as pd
pd.options.mode.chained_assignment=None
df = pd.DataFrame({'deli_name': ['自社配送', '自社配送', 'store_A'], 'store_name': ['store_A', 'store_B', 'store_C'], 'price': [890, 833, 7842]}, index=[0, 1, 2])
df.deli_name[df.store_name == 'store_A'] = 'store_A'
pd.options.mode.chained_assignment=None
df = pd.DataFrame({'deli_name': ['自社配送', '自社配送', 'store_A'], 'store_name': ['store_A', 'store_B', 'store_C'], 'price': [890, 833, 7842]}, index=[0, 1, 2])
df.deli_name[df.store_name == 'store_A'] = 'store_A'
890デフォルトの名無しさん
2021/11/30(火) 23:36:58.51ID:EeXqZSw1 警告の下にあるリンク先はよんだん?
891デフォルトの名無しさん
2021/12/01(水) 00:11:27.02ID:X46if3HQ >>888
deli_name_copy = df.deli_name.copy()
deli_name_copy[df.store_name == 'store_A'] = 'store_A'
df.deli_name = deli_name_copy
deli_name_copy = df.deli_name.copy()
deli_name_copy[df.store_name == 'store_A'] = 'store_A'
df.deli_name = deli_name_copy
892デフォルトの名無しさん
2021/12/01(水) 11:49:27.95ID:kM+Jjoc8 > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
クソチョンはウンコを食べる糞食人種w
朝鮮人はゲリ便をじゅるじゅると
うまそうに食うw
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
クソチョンはウンコを食べる糞食人種w
朝鮮人はゲリ便をじゅるじゅると
うまそうに食うw
893デフォルトの名無しさん
2021/12/02(木) 13:28:11.18ID:XKNm0UTJ beautifulsoupで<div class="box_area">の下にあるpタグの下にある全ての<span class="link_pdf">タグの下にあるaタグを取得するには例えばどう書けばいいですか?
894デフォルトの名無しさん
2021/12/02(木) 13:30:55.05ID:YlIFrtYh 順番に絞ってけば取れるだろ?
895デフォルトの名無しさん
2021/12/02(木) 13:51:53.14ID:k2JFy+0I セレクタの勉強をしろ
896デフォルトの名無しさん
2021/12/02(木) 14:13:40.25ID:XKNm0UTJ897デフォルトの名無しさん
2021/12/02(木) 22:47:46.92ID:ap4H6lSA typing.List、Dictって非推奨らしいけど、代わりは一体どうしたら・・
898デフォルトの名無しさん
2021/12/03(金) 00:05:29.70ID:/aixTtEw ビルトインのlist、dict使えってことなんじゃね?困ることあるん?
899デフォルトの名無しさん
2021/12/03(金) 01:06:36.94ID:mlmp5wts 3.9から
list[int]
とか
dict[str, int]
とか書けるようになったから要らんだろってこと
この調子でイテレータもどうにかして欲しい
list[int]
とか
dict[str, int]
とか書けるようになったから要らんだろってこと
この調子でイテレータもどうにかして欲しい
900デフォルトの名無しさん
2021/12/03(金) 02:36:40.94ID:XIVj35HM >>893
下と言う表現は、あいまい
下と言っても、子・直下のみは、> を使う
例えば、id がabc の直下の、xyz クラス
#abc > .xyz
(再帰的な)子孫なら、半角空白を使う
例えば、div の子孫の、p
div p
詳細は、jQuery などのCSS セレクター一覧表を参照
下と言う表現は、あいまい
下と言っても、子・直下のみは、> を使う
例えば、id がabc の直下の、xyz クラス
#abc > .xyz
(再帰的な)子孫なら、半角空白を使う
例えば、div の子孫の、p
div p
詳細は、jQuery などのCSS セレクター一覧表を参照
901デフォルトの名無しさん
2021/12/03(金) 06:13:15.75ID:Lgq6hTbY >>900
助かる
助かる
902デフォルトの名無しさん
2021/12/03(金) 12:21:12.38 beautifulsoup4でfind_allするとき、table周りはなんか一癖あった記憶がある
903デフォルトの名無しさん
2021/12/03(金) 13:26:46.51ID:Lgq6hTbY selectでいいんだよね?
904デフォルトの名無しさん
2021/12/05(日) 21:47:07.14ID:z1lQW/5A はじめてプロファイラー使ってみたら
Pythonでファイルの存在確認って遅くないか?
じぶんの環境だけなのか?
Pythonでファイルの存在確認って遅くないか?
じぶんの環境だけなのか?
905デフォルトの名無しさん
2021/12/05(日) 21:58:46.62ID:z1lQW/5A 自己解決
ファイルの存在確認が遅いのはHDDのせいみたい
2度目以降は高速になった
キャッシュが聞いてるからかと
ファイルの存在確認が遅いのはHDDのせいみたい
2度目以降は高速になった
キャッシュが聞いてるからかと
906デフォルトの名無しさん
2021/12/06(月) 00:07:26.37ID:Phmk8fSW HDD関係なく初回のstatが遅いのはWindowsも含めUnix系のファイルシステムだとしょうがない
907デフォルトの名無しさん
2021/12/06(月) 07:12:36.68ID:1pNPp5ri コマンドプロンプトのような見た目のコンソール上で動く、CUIの特殊な計算機があります
C言語で書かれていてコンパイル済みのフリーソフトです
これをpythonで操作して自動化に役立てようと思っています
出力はコンソール上に文字列でなされるのですが、文字列を直接取得する方法はありますか?
C言語で書かれていてコンパイル済みのフリーソフトです
これをpythonで操作して自動化に役立てようと思っています
出力はコンソール上に文字列でなされるのですが、文字列を直接取得する方法はありますか?
908デフォルトの名無しさん
2021/12/06(月) 08:19:00.70ID:0fxVnCQi popen
909デフォルトの名無しさん
2021/12/06(月) 08:58:45.68ID:1pNPp5ri >>908
ありがとうございます
VSCODEで試してみてるんですが
引数にそのexeファイルだけ取って、runかpopenを使うと、どちらでもコンソールにCUIが直接表示されます
(そのままキー入力すると普通に動作します)
しかし引数にstdin=PIPE,stdout=PIPE,などを入れるとピクリとも動かなくなります(CUIが出ない、communicationやinputなどで入力を試みても出力がなく先に進まない、エラーも吐かない)
何か間違えたのだと思うのですが、
解説ブログやドキュメントを読んでも全く解決策がわからず困り果てています
何かご存知の方がいらしたらお願いします
ありがとうございます
VSCODEで試してみてるんですが
引数にそのexeファイルだけ取って、runかpopenを使うと、どちらでもコンソールにCUIが直接表示されます
(そのままキー入力すると普通に動作します)
しかし引数にstdin=PIPE,stdout=PIPE,などを入れるとピクリとも動かなくなります(CUIが出ない、communicationやinputなどで入力を試みても出力がなく先に進まない、エラーも吐かない)
何か間違えたのだと思うのですが、
解説ブログやドキュメントを読んでも全く解決策がわからず困り果てています
何かご存知の方がいらしたらお願いします
910デフォルトの名無しさん
2021/12/06(月) 09:06:19.91ID:1pNPp5ri すみません、書き間違えました
runまたはpopenでexeファイルを開くと、
VScodeの画面上で、「ターミナル」にCUIが表示されます
そこにキー入力するとそのまま動作します。
runまたはpopenでexeファイルを開くと、
VScodeの画面上で、「ターミナル」にCUIが表示されます
そこにキー入力するとそのまま動作します。
911デフォルトの名無しさん
2021/12/06(月) 10:11:30.79ID:+xtv5Wsa expect相当がほしいならpexpectとか
標準モジュールだけで解決するのは面倒なのでPyPIで探すのが吉
標準モジュールだけで解決するのは面倒なのでPyPIで探すのが吉
912デフォルトの名無しさん
2021/12/06(月) 12:38:40.47ID:+ZC47hZJ >>909
問題を再現できるコードを提示するか切り分けするかしてもらわないと
Pythonのコードの書き方が悪いのかその計算機の呼び出し方が間違ってるのかわからない
1. 単純なpipeを使ったコマンドをpopenで動かしてstdout, stderrを取れてるかどうか?
$ echo "foo.txt" | grep -o ".t"
(echoやgrepはwindowsのコマンドで代用して)
2. 取れてるなら特殊な計算機はpipeを使ったコマンドで動くのか?
$ echo “1 + 2” | foo.exe
CUIと言ってるのがncursesのようなTUIだとSendKeysが必要かも
問題を再現できるコードを提示するか切り分けするかしてもらわないと
Pythonのコードの書き方が悪いのかその計算機の呼び出し方が間違ってるのかわからない
1. 単純なpipeを使ったコマンドをpopenで動かしてstdout, stderrを取れてるかどうか?
$ echo "foo.txt" | grep -o ".t"
(echoやgrepはwindowsのコマンドで代用して)
2. 取れてるなら特殊な計算機はpipeを使ったコマンドで動くのか?
$ echo “1 + 2” | foo.exe
CUIと言ってるのがncursesのようなTUIだとSendKeysが必要かも
913デフォルトの名無しさん
2021/12/06(月) 17:45:57.66ID:eUQmGuZl visual studioでkeras/tensorflowのデバッグ方法でつまっています
K.sigmoid()やtf.boolean_mask()のようなバックエンド処理ばかりなのでデバッグ中に変数の中身が分かりません
今はとりあえずnumpyや独自実装で移植しながら中を見てデバッグしています
しかし問題にぶつかったとき原因が移植作業なのか元々のソースなのか切り分けができず困っています
keras.backendなどを使いながらも変数の中を見れるようにする方法ないでしょうか?
K.sigmoid()やtf.boolean_mask()のようなバックエンド処理ばかりなのでデバッグ中に変数の中身が分かりません
今はとりあえずnumpyや独自実装で移植しながら中を見てデバッグしています
しかし問題にぶつかったとき原因が移植作業なのか元々のソースなのか切り分けができず困っています
keras.backendなどを使いながらも変数の中を見れるようにする方法ないでしょうか?
914デフォルトの名無しさん
2021/12/06(月) 18:44:05.67ID:5Z6rXs0A915デフォルトの名無しさん
2021/12/06(月) 20:25:32.94ID:ZoRh0Nkj ターミナルでfor命令を1行で実行する場合、両サイドを[]で囲むじゃないですか
>>> [i for i in range(10)]
のように。この[]は、一般的になんて呼ばれていますか?
>>> [i for i in range(10)]
のように。この[]は、一般的になんて呼ばれていますか?
916デフォルトの名無しさん
2021/12/06(月) 20:28:37.11ID:q0abD6Vl 内包表記 >>915
917デフォルトの名無しさん
2021/12/06(月) 20:42:34.30ID:1jgDkimx List comprehensions
918デフォルトの名無しさん
2021/12/06(月) 23:38:34.79ID:fS/Lj56T すいませんmaxについて教えて下さい。
ordered_list_xrp = [menber.get('price') for menber in open_orders_xrp]
このコードでリストを取得してこのようなリストがとれました、
['99.460', '104.150', '118.290', '123.800', '127.440', '130.990']
次にこのリストの中から最大値を取得しようとして、
このようなコードを実行したのですが、
max_price_list_xrp = float(max(ordered_list_xrp))
結果が、99.46になってしまいました、
最大値はリスト最後の、130.99のはずなのに、
どうしてうまく取れなかったのでしょうか?
ordered_list_xrp = [menber.get('price') for menber in open_orders_xrp]
このコードでリストを取得してこのようなリストがとれました、
['99.460', '104.150', '118.290', '123.800', '127.440', '130.990']
次にこのリストの中から最大値を取得しようとして、
このようなコードを実行したのですが、
max_price_list_xrp = float(max(ordered_list_xrp))
結果が、99.46になってしまいました、
最大値はリスト最後の、130.99のはずなのに、
どうしてうまく取れなかったのでしょうか?
919デフォルトの名無しさん
2021/12/06(月) 23:42:47.24ID:1jgDkimx >>> '99.460' < '130.990'
False
>>> 99.460 < 130.990
True
False
>>> 99.460 < 130.990
True
920デフォルトの名無しさん
2021/12/06(月) 23:50:20.47ID:UpeudXBw >>918
文字列だからだよ。
文字列だからだよ。
921デフォルトの名無しさん
2021/12/06(月) 23:51:25.10ID:fS/Lj56T922デフォルトの名無しさん
2021/12/06(月) 23:53:49.67ID:1jgDkimx max(float(x) for x in ordered_list_xrp)
923デフォルトの名無しさん
2021/12/06(月) 23:56:05.27ID:1jgDkimx max(ordered_list_xrp, key=float)
924デフォルトの名無しさん
2021/12/06(月) 23:58:55.21ID:fS/Lj56T925デフォルトの名無しさん
2021/12/07(火) 01:52:20.23ID:904hja4x pythonのselfについて教えてくだしあ
selfはインスタンス自身を表すってのはわかったんですが、
自分のクラスのメソッドの中でselfを関数として呼ぶと何が起こるんですか?
つまりこんな感じです
class Testclass:
def __init__(self):
pass
def kansuu(self):
self("hikisu") #←これ何してるんですか?
selfはインスタンス自身を表すってのはわかったんですが、
自分のクラスのメソッドの中でselfを関数として呼ぶと何が起こるんですか?
つまりこんな感じです
class Testclass:
def __init__(self):
pass
def kansuu(self):
self("hikisu") #←これ何してるんですか?
926デフォルトの名無しさん
2021/12/07(火) 07:54:32.43ID:G7aiaFNj dict((str(i),i) if i%2==0 else (i,str(i)) for i in range(10))
max(float(x) for x in ordered_list_xrp)
この2つってどういう順番で何が起きてんの?
max(float(x) for x in ordered_list_xrp)
この2つってどういう順番で何が起きてんの?
927デフォルトの名無しさん
2021/12/07(火) 08:26:52.55ID:KRSgdo5l >>925
self.__call__が実行される
self.__call__が実行される
928デフォルトの名無しさん
2021/12/07(火) 13:28:56.27ID:mOcbYYmI >>926
内包表記のとき、表記が感覚的に逆(慣れればそうでもないけど)に感じるが
一度理解すると簡単
https://colab.research.google.com/drive/199DCLDxHgvBc752ulWDueqC7cmt2iGbd
内包表記のとき、表記が感覚的に逆(慣れればそうでもないけど)に感じるが
一度理解すると簡単
https://colab.research.google.com/drive/199DCLDxHgvBc752ulWDueqC7cmt2iGbd
929デフォルトの名無しさん
2021/12/07(火) 15:22:45.64ID:g74FV+wu pythonは後出しだから慣れないな
python「ここにこれを代入して。ああ、もしもこの条件だったら代入するのはやっぱりこっちね。ああ、その代入はループでしてね」
ほかの言語「次の処理をループして。もしもこの条件だったら、ここにこれを代入、条件違ったらこっちを代入」
python「ここにこれを代入して。ああ、もしもこの条件だったら代入するのはやっぱりこっちね。ああ、その代入はループでしてね」
ほかの言語「次の処理をループして。もしもこの条件だったら、ここにこれを代入、条件違ったらこっちを代入」
930デフォルトの名無しさん
2021/12/07(火) 15:32:47.34ID:904hja4x >>927
ありがとうございました!
ありがとうございました!
931デフォルトの名無しさん
2021/12/07(火) 18:04:11.03ID:cqBSzh42 EmpathというA PIを用いてその結果の数値をリストにまとめシリアル通信でarduinoに送りたいです。
↓リストにまとめた以降
RGB = [round(red) , round(green) , round(blue) , energy , calm]
print (RGB)
send_RGB = bytes(RGB)
print(send_RGB)
with serial.Serial('COM15' , 9600) as ser:
print('----')
ser.write(send_RGB)
print('----')
こんな感じでbyte型にできているのか(そもそもbyteにするか)わからないのですが
この数値をarduinoに取り込みたいので何か参考にさせてください。
受け取るarduino側が悪いのかもしれませんが。。
↓リストにまとめた以降
RGB = [round(red) , round(green) , round(blue) , energy , calm]
print (RGB)
send_RGB = bytes(RGB)
print(send_RGB)
with serial.Serial('COM15' , 9600) as ser:
print('----')
ser.write(send_RGB)
print('----')
こんな感じでbyte型にできているのか(そもそもbyteにするか)わからないのですが
この数値をarduinoに取り込みたいので何か参考にさせてください。
受け取るarduino側が悪いのかもしれませんが。。
932デフォルトの名無しさん
2021/12/07(火) 18:47:54.90ID:g74FV+wu csvの文字列にした方がいいよ。簡単にやるならこんな感じ
送信側はcsv文字列で送信
受信側は1文字ずつメモリに貯め込んで改行コード検出で、そこまで貯まった文字列が数値と区切り文字だけで構成されてて区切り数が正しかったら正規なデータとして処理
受信側テストはターミナルソフトで手入力したcsv送って処理できたらおk
送信側はcsv文字列で送信
受信側は1文字ずつメモリに貯め込んで改行コード検出で、そこまで貯まった文字列が数値と区切り文字だけで構成されてて区切り数が正しかったら正規なデータとして処理
受信側テストはターミナルソフトで手入力したcsv送って処理できたらおk
933デフォルトの名無しさん
2021/12/07(火) 19:57:20.96ID:1b+mdTOc > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
クソチョンはウンコを食べる糞食人種w
朝鮮人はゲリ便をじゅるじゅると
うまそうに食うw
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
クソチョンはウンコを食べる糞食人種w
朝鮮人はゲリ便をじゅるじゅると
うまそうに食うw
934デフォルトの名無しさん
2021/12/12(日) 02:21:30.33ID:neH/oCpw Pythonで「オブジェクトが存在しなかったら作る」という処理を書きたいと思ってます
Pythonは3.6.9、OSはAlmaLinux8.5、IDEはVS.codeです
import class
if (objA is None):
objA = class.classA('nameclassA')
とやってみたのですが、if文のところで name 'objA' is not defines となってしまいます
何かよい方法はありますか
Pythonは3.6.9、OSはAlmaLinux8.5、IDEはVS.codeです
import class
if (objA is None):
objA = class.classA('nameclassA')
とやってみたのですが、if文のところで name 'objA' is not defines となってしまいます
何かよい方法はありますか
935デフォルトの名無しさん
2021/12/12(日) 02:28:54.11ID:LDYHaH+j objA = None
と上のほうに書いておけ
と上のほうに書いておけ
936デフォルトの名無しさん
2021/12/12(日) 02:58:35.01ID:neH/oCpw937デフォルトの名無しさん
2021/12/12(日) 03:00:27.68ID:lyarTocF938デフォルトの名無しさん
2021/12/12(日) 03:42:09.06ID:neH/oCpw939デフォルトの名無しさん
2021/12/12(日) 12:38:50.06ID:0NBntfzw メタプログラミングするレベルでこんなのわからんのも変
十中八九設計がおかしい
十中八九設計がおかしい
940デフォルトの名無しさん
2021/12/12(日) 14:44:59.69ID:qWcO2iK8941デフォルトの名無しさん
2021/12/12(日) 16:17:39.25ID:GOu/cbbC サーバー側のタイムゾーンはUTCという前提で、
それをフロントエンドで日本時間表示することになりました
しかしその表示に使うライブラリがawareを受け付けなくて
nativeでないといけないのです つまり
awareなUTC時間のdatetime型 → nativeなJST(Asian/Tokyo)時間のdatetime型
への変換をすることになったのですが
これを一発で変換するようなメソッドって
標準はもちろんpytzとかにも用意されてませんよね?
一度timestampに変換してtimedeltaにして演算
という認識で良いのでしょうか?
それをフロントエンドで日本時間表示することになりました
しかしその表示に使うライブラリがawareを受け付けなくて
nativeでないといけないのです つまり
awareなUTC時間のdatetime型 → nativeなJST(Asian/Tokyo)時間のdatetime型
への変換をすることになったのですが
これを一発で変換するようなメソッドって
標準はもちろんpytzとかにも用意されてませんよね?
一度timestampに変換してtimedeltaにして演算
という認識で良いのでしょうか?
942デフォルトの名無しさん
2021/12/12(日) 17:28:22.24ID:9VS1oyXL 失礼します
BeautifulSoupというライブラリを使って"任意のサイトのhtmlソースから特定の部分だけを抜き出して表示する"というプログラムを作りたいのですが、ググっても"URLの中の一部の文字列"のみを抽出する方法が分からないので教えて頂きたいです
具体的には、htmlソースからUA-XXXXXXX-Xという文字列を抜き出したい場合、
<p>UA-XXXXXXX-X</p> ←これならできるのですが
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXX-X"></script> ←この場合にUA-XXXXXXX-Xだけを抜き出す方法が分かりません
BeautifulSoupというライブラリを使って"任意のサイトのhtmlソースから特定の部分だけを抜き出して表示する"というプログラムを作りたいのですが、ググっても"URLの中の一部の文字列"のみを抽出する方法が分からないので教えて頂きたいです
具体的には、htmlソースからUA-XXXXXXX-Xという文字列を抜き出したい場合、
<p>UA-XXXXXXX-X</p> ←これならできるのですが
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXX-X"></script> ←この場合にUA-XXXXXXX-Xだけを抜き出す方法が分かりません
943デフォルトの名無しさん
2021/12/12(日) 17:34:26.79ID:0NBntfzw944デフォルトの名無しさん
2021/12/12(日) 17:35:49.84ID:a4cuZ/Mw 1. scriptエレメントを全部取得する
2. ↑で取得したscriptエレメントのsrcを読み取る
3. ↑で読み取ったsrcにua〜が含まれてるかチェックする
って流れで考えれば分かりやすいんじゃない?
2. ↑で取得したscriptエレメントのsrcを読み取る
3. ↑で読み取ったsrcにua〜が含まれてるかチェックする
って流れで考えれば分かりやすいんじゃない?
945デフォルトの名無しさん
2021/12/12(日) 17:42:52.14ID:I5fuTkfi >>942
1:BeautifulSoupを使ってURL全体を取得する
2:urllib.parseを使って解析
3:今回の場合はquery部分で入ってくるので、それを取得する
https://docs.python.org/ja/3/library/urllib.parse.html
そのURLの形式で固定ならこれで行けるんじゃない?
https://ideone.com/yoHzOG
1:BeautifulSoupを使ってURL全体を取得する
2:urllib.parseを使って解析
3:今回の場合はquery部分で入ってくるので、それを取得する
https://docs.python.org/ja/3/library/urllib.parse.html
そのURLの形式で固定ならこれで行けるんじゃない?
https://ideone.com/yoHzOG
946デフォルトの名無しさん
2021/12/12(日) 17:43:33.09ID:Hsntocf/ URLのクエリ文字列(クエリパラメータ)を取得。
947デフォルトの名無しさん
2021/12/12(日) 20:30:44.55ID:9VS1oyXL >>944,945,946
ご丁寧にありがとうございます。特に945さんに貼って頂いたコードは大変参考になりました。
お陰様で目的は達成できたのですが、他の余計な行も大量に表示されてしまいます。
邪魔な行を取り除くには下のコードに何を追加すればよいでしょうか?
b''
b''
b''
↑こんな感じで不要な行が残っています
・ソースコード
from bs4 import BeautifulSoup
from urllib.parse import urlparse
import requests
url = input("Enter a domain: ")
r = requests.get("http://" +url)
data = r.text
soup = BeautifulSoup(data)
for link in soup.find_all('script'):
urls = link.get('src')
res = urlparse(urls)
print(res.query)
ご丁寧にありがとうございます。特に945さんに貼って頂いたコードは大変参考になりました。
お陰様で目的は達成できたのですが、他の余計な行も大量に表示されてしまいます。
邪魔な行を取り除くには下のコードに何を追加すればよいでしょうか?
b''
b''
b''
↑こんな感じで不要な行が残っています
・ソースコード
from bs4 import BeautifulSoup
from urllib.parse import urlparse
import requests
url = input("Enter a domain: ")
r = requests.get("http://" +url)
data = r.text
soup = BeautifulSoup(data)
for link in soup.find_all('script'):
urls = link.get('src')
res = urlparse(urls)
print(res.query)
948デフォルトの名無しさん
2021/12/12(日) 22:55:58.59ID:+1Oq/K+R res.queryが存在するならprintするっていう風にすればいいんじゃね
949デフォルトの名無しさん
2021/12/14(火) 11:59:17.10ID:s9Ba9CTM PysimpleGUIについてちょっと聞きたいんですが、
sg.popup_get_fileを使いたいんですが、ファイルを選択せずキャンセルを行うと
『TclError: can't set "::tk::dialog::file::showHiddenBtn": parent namespace doesn't exist』
といったエラー文が出てしまうんですが、何が問題なのでしょうか
公式に載ってる↓のコードでもエラーが出るのでとっかかりすら掴めません・・・
import PySimpleGUI as sg
filename = sg.popup_get_file('処理したいファイルを入力してください')
sg.popup('入力した', filename)
sg.popup_get_fileを使いたいんですが、ファイルを選択せずキャンセルを行うと
『TclError: can't set "::tk::dialog::file::showHiddenBtn": parent namespace doesn't exist』
といったエラー文が出てしまうんですが、何が問題なのでしょうか
公式に載ってる↓のコードでもエラーが出るのでとっかかりすら掴めません・・・
import PySimpleGUI as sg
filename = sg.popup_get_file('処理したいファイルを入力してください')
sg.popup('入力した', filename)
950デフォルトの名無しさん
2021/12/14(火) 20:49:18.01 import numpy as np
a1=np.array([1])
a2=[1]
print(type(a1[0]),type(a2[0]))
print(a1[0]==a2[0]) #@
d1={"n":a1[0]}
d2={"n":a2[0]}
print( json.dumps(d2) )
print( json.dumps(d1) ) #TypeError: Object of type int64 is not JSON serializable
#@がTrueになるのってpythonのバグではありませんか・・?
仕様であれば何かメリットとかあるのでしょうか?
a1=np.array([1])
a2=[1]
print(type(a1[0]),type(a2[0]))
print(a1[0]==a2[0]) #@
d1={"n":a1[0]}
d2={"n":a2[0]}
print( json.dumps(d2) )
print( json.dumps(d1) ) #TypeError: Object of type int64 is not JSON serializable
#@がTrueになるのってpythonのバグではありませんか・・?
仕様であれば何かメリットとかあるのでしょうか?
951デフォルトの名無しさん
2021/12/14(火) 21:04:19.38ID:70QYvgE2 a1[0]は(int32の)1でしょ?そしてa2[0]も(intの)1
int32とintぐらいの差でfalseになると色々困る
int32とintぐらいの差でfalseになると色々困る
952デフォルトの名無しさん
2021/12/14(火) 21:30:31.61ID:lu87KQQd コード追ってはないけどnumpy側でそういう風に__eq__実装してるだけ
なんなら
>>> a1 == a2
array([ True])
になるしうれしいけど変だわな
なんなら
>>> a1 == a2
array([ True])
になるしうれしいけど変だわな
953デフォルトの名無しさん
2021/12/15(水) 11:10:32.17 >>951-952
なるほど
pandasもnumpy int64なので
dataframeを何かしらのAPIに投げるときに
そのままjson.dumps使えたらなぁと思いましたが
とりあえずはint32変換して成型した方がよさそうですねありやした
なるほど
pandasもnumpy int64なので
dataframeを何かしらのAPIに投げるときに
そのままjson.dumps使えたらなぁと思いましたが
とりあえずはint32変換して成型した方がよさそうですねありやした
954デフォルトの名無しさん
2021/12/17(金) 08:55:01.03ID:s+y1HFod Windows、Linuxの両方で動作するスクリプトを作ろうと思っているのですが
スクリプトのファイルの改行コードについて、CR+LFがよいのかLFがよいのか
教えて下さい
#!/usr/bin/env python3
print("aaa")
こういうshebangが使われたスクリプトの場合なのですが、関連付けやbashのshellext等の
設定が無い環境では
・改行コードがLF
→Windowsだと「python3 〇〇.py」で実行OK。ただし編集はエディタを選ぶ
→Linuxだと「./〇〇.py」でも「python3 〇〇.py」でも実行OK
・改行コードがCR+LF
→Windowsだと「python3 〇〇.py」で実行OK
→Linuxだと「./〇〇.py」は「bad interpreter」となる。「python3 〇〇.py」では実行OK
…となりますよね
いずれのOSでも必ず「python3 〇〇.py」として実行できますし、
改行コードの問題はshebangの問題なので
・ファイルの改行コードはCR+LF
・Linuxでの実行は「python3 〇〇.py」で行う。shebangは書かない、使わない
こうするのが最も無難な方針に思えますが、いかがでしょうか
それともshebangも活用すべき、文字コードはLFとすべき、なのでしょうか
スクリプトのファイルの改行コードについて、CR+LFがよいのかLFがよいのか
教えて下さい
#!/usr/bin/env python3
print("aaa")
こういうshebangが使われたスクリプトの場合なのですが、関連付けやbashのshellext等の
設定が無い環境では
・改行コードがLF
→Windowsだと「python3 〇〇.py」で実行OK。ただし編集はエディタを選ぶ
→Linuxだと「./〇〇.py」でも「python3 〇〇.py」でも実行OK
・改行コードがCR+LF
→Windowsだと「python3 〇〇.py」で実行OK
→Linuxだと「./〇〇.py」は「bad interpreter」となる。「python3 〇〇.py」では実行OK
…となりますよね
いずれのOSでも必ず「python3 〇〇.py」として実行できますし、
改行コードの問題はshebangの問題なので
・ファイルの改行コードはCR+LF
・Linuxでの実行は「python3 〇〇.py」で行う。shebangは書かない、使わない
こうするのが最も無難な方針に思えますが、いかがでしょうか
それともshebangも活用すべき、文字コードはLFとすべき、なのでしょうか
955デフォルトの名無しさん
2021/12/17(金) 10:09:24.99ID:Ufm8xgDf 世の中のWinアプリ以外のソースはほぼLFだし
コーディング用途にLF扱えないエディタの出番はなくない?
それかハマりどころあるけどGit管理でautocrlf活用するか
コーディング用途にLF扱えないエディタの出番はなくない?
それかハマりどころあるけどGit管理でautocrlf活用するか
956デフォルトの名無しさん
2021/12/17(金) 11:03:16.89ID:AcAuqy7R 基本的はLFで揃えとくべき
それで困る状況がある場合だけautocrlfで対処
それで困る状況がある場合だけautocrlfで対処
957デフォルトの名無しさん
2021/12/17(金) 13:32:20.53ID:fkpshCq+ Windowsがメインだけど、シバンは使う、改行はLF
エディタ(NPP)でもアドオンつかって、保存時にLFで自動で保存(問い合わせ)できるようにしている
エディタ(NPP)でもアドオンつかって、保存時にLFで自動で保存(問い合わせ)できるようにしている
958デフォルトの名無しさん
2021/12/17(金) 16:27:15.20ID:6e8bb+xR LF以外の選択肢考えたことなかったわ
959デフォルトの名無しさん
2021/12/17(金) 17:25:27.22ID:tWB5K5S1 漏れは、WSL2, Ubuntu 18.04 で、
日本人が作った、バージョンマネージャーのanyenv で、rbenv, nodenv を使っているけど、
たぶん、CR + LF だとバグる
#!/usr/bin/env ruby
echo -e "$RBENV_ROOT\n$NODENV_ROOT"
/home/ユーザー名/.anyenv/envs/rbenv
/home/ユーザー名/.anyenv/envs/nodenv
日本人が作った、バージョンマネージャーのanyenv で、rbenv, nodenv を使っているけど、
たぶん、CR + LF だとバグる
#!/usr/bin/env ruby
echo -e "$RBENV_ROOT\n$NODENV_ROOT"
/home/ユーザー名/.anyenv/envs/rbenv
/home/ユーザー名/.anyenv/envs/nodenv
960デフォルトの名無しさん
2021/12/17(金) 23:25:03.55ID:87jtAeRP >>958
os/9とかMac osがcrだよ
os/9とかMac osがcrだよ
961デフォルトの名無しさん
2021/12/17(金) 23:45:19.54ID:Ufm8xgDf 初心者スレにそんな現役じゃない例あげてなにがしたいん
962デフォルトの名無しさん
2021/12/18(土) 00:15:24.44ID:mxS9DQCX pandasで、1つの列のデータからapply()を使って複数の値を戻り値として返してそれぞれ別々の列として追加したいです。
(列データxに対して、x*2, x/2 を返す等)
DataFrameのapply()には、result_type='expand'で複数戻り値を別々の列(Series)に格納できるものがありますが、Seriesのapply()にはresult_typeがありませんでした。result_type='expand'のようなシンプルなやり方をするにはDataFrameのapply()を使うしか無いですか?
できればSeriesを指定した上でapplyを呼び出したいです。
ちなみに、呼び出した関数でpd.Seriesを戻り値として返すやり方もWebで見つかりましたがものすごく処理が遅かったので正しいやり方では無さそうです。
(列データxに対して、x*2, x/2 を返す等)
DataFrameのapply()には、result_type='expand'で複数戻り値を別々の列(Series)に格納できるものがありますが、Seriesのapply()にはresult_typeがありませんでした。result_type='expand'のようなシンプルなやり方をするにはDataFrameのapply()を使うしか無いですか?
できればSeriesを指定した上でapplyを呼び出したいです。
ちなみに、呼び出した関数でpd.Seriesを戻り値として返すやり方もWebで見つかりましたがものすごく処理が遅かったので正しいやり方では無さそうです。
963デフォルトの名無しさん
2021/12/18(土) 00:37:48.68ID:mmV8s4af applyを2回呼ぶのは?
964デフォルトの名無しさん
2021/12/18(土) 01:52:04.79ID:mxS9DQCX それが一番簡単ですが冗長な感じと思ったので…
でも、result_type='expand'も処理時間が遅いようなので、やはり複数回呼び出す方法にします。
でも、result_type='expand'も処理時間が遅いようなので、やはり複数回呼び出す方法にします。
965デフォルトの名無しさん
2021/12/18(土) 02:01:17.24ID:iUN/Cy1s df[‘B’], df[‘C’] = zip(*df['A'].apply(lambda x: ( x * 2, x / 2)))
966デフォルトの名無しさん
2021/12/18(土) 02:09:06.48ID:iUN/Cy1s df[[‘B’, ‘C’]]= df['A'].apply(lambda x: (x * 2, x / 2)).to_list()
967デフォルトの名無しさん
2021/12/18(土) 23:23:56.96ID:rJsqD2PP 以下のようなファイル・ディレクトリ構成でツールを作ってます
mainscript.py
modules/
__init__.py
moduleA.py ← 実際のメイン処理
moduleB.py ← 関数を別ファイル化
mainscript.pyの中でmoduleA.pyに書いた機能を使うので、mainscript.pyの中にて
from modules import moduleA
として読み込んでいます
ここで、moduleA.pyは、moduleB.pyに書いた機能を使ってます
この場合、moduleA.pyに
from modules import moduleB
と、「from modules import 〜」が無いと動作しないので、必要なのだと思ってます
しかしmoduleA.py、moduleB.pyを流用するとき、moduleA.pyは「from modules」を
流用先のディレクトリ構成にあわせて修正しなければならず、困ってます
また「modules」ディレクトリは、mainscript.pyから見てのものであり、
moduleA.pyに「from modules」文があると、moduleA.pyだけ見ていても
modulesディレクトリは親ディレクトリであることを読み取れず、それも困ってます
上記のような構成にしたとき、このような問題を解決する方法を教えてください
mainscript.py
modules/
__init__.py
moduleA.py ← 実際のメイン処理
moduleB.py ← 関数を別ファイル化
mainscript.pyの中でmoduleA.pyに書いた機能を使うので、mainscript.pyの中にて
from modules import moduleA
として読み込んでいます
ここで、moduleA.pyは、moduleB.pyに書いた機能を使ってます
この場合、moduleA.pyに
from modules import moduleB
と、「from modules import 〜」が無いと動作しないので、必要なのだと思ってます
しかしmoduleA.py、moduleB.pyを流用するとき、moduleA.pyは「from modules」を
流用先のディレクトリ構成にあわせて修正しなければならず、困ってます
また「modules」ディレクトリは、mainscript.pyから見てのものであり、
moduleA.pyに「from modules」文があると、moduleA.pyだけ見ていても
modulesディレクトリは親ディレクトリであることを読み取れず、それも困ってます
上記のような構成にしたとき、このような問題を解決する方法を教えてください
968デフォルトの名無しさん
2021/12/18(土) 23:32:07.96ID:/Zq/GLbL from . import moduleB
969デフォルトの名無しさん
2021/12/18(土) 23:35:58.62ID:rJsqD2PP970デフォルトの名無しさん
2021/12/19(日) 02:23:46.60ID:xFmqbcza971デフォルトの名無しさん
2021/12/20(月) 11:22:53.74ID:sxGOmJ2J > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
クソチョンはウンコを食べる糞食人種w
朝鮮人はゲリ便をじゅるじゅると
うまそうに食うw
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
クソチョンはウンコを食べる糞食人種w
朝鮮人はゲリ便をじゅるじゅると
うまそうに食うw
972デフォルトの名無しさん
2021/12/23(木) 16:13:24.40ID:UaimnPqj beautifulsoupで取得したページでth:-soup-containsというセレクターを使うと
NotImplementedError: ':-soup-contains' pseudo-class is not implemented at this time.
と出ます。
この原因は何でしょうか?必要な情報があれば載せます
NotImplementedError: ':-soup-contains' pseudo-class is not implemented at this time.
と出ます。
この原因は何でしょうか?必要な情報があれば載せます
973デフォルトの名無しさん
2021/12/23(木) 17:45:26.84ID:QOBvhpdm beautifulsoupの最新版インストールしてるか確認しろ
974デフォルトの名無しさん
2021/12/23(木) 22:05:30.20ID:Gg61L1jf streamlinkってpythonで書かれてるんだよね。
python的な書き方ってないの?
subprocess使って
subprocess.call(['streamlink', url, 'best', '--hls-duration', time, '-o', out2])
ってやってるんだけど、python的な書き方は無いのかなって思って。
python的な書き方ってないの?
subprocess使って
subprocess.call(['streamlink', url, 'best', '--hls-duration', time, '-o', out2])
ってやってるんだけど、python的な書き方は無いのかなって思って。
975デフォルトの名無しさん
2021/12/23(木) 22:24:09.67ID:zCNeJPRa976デフォルトの名無しさん
2021/12/23(木) 22:40:50.88ID:Gg61L1jf >975
このページ、白バックに白文字になってるところが多くて読みづらいですね。
fd = stream.open()
data = fd.read( 00:30:00)
fd.output(filename)
みたいな書き方できないのかなって。
このページ、白バックに白文字になってるところが多くて読みづらいですね。
fd = stream.open()
data = fd.read( 00:30:00)
fd.output(filename)
みたいな書き方できないのかなって。
977デフォルトの名無しさん
2021/12/23(木) 22:49:03.00ID:Gg61L1jf read()でbyteじゃなて時間で指定したいし、readしたdataをoutputする方法が知りたいんです。
codec は copy で、生のまま ts とか mp4 にoutputしたい。
スクリプトのサンプル探してるんだけど、みんな ffmpeg に渡したり、subprocess 使ってる。
codec は copy で、生のまま ts とか mp4 にoutputしたい。
スクリプトのサンプル探してるんだけど、みんな ffmpeg に渡したり、subprocess 使ってる。
978デフォルトの名無しさん
2021/12/23(木) 23:04:17.60ID:zCNeJPRa 取得後は単なるデータ列としてか扱えないぽいから
https://streamlink.github.io/api.html#streamlink.stream.HLSStream
コマンドライン同様どう取得するかを指定できるだけであまりうれしくなかった。
それでいいならI/Oとしては扱える。
MPEGコンテナ操作するプログラムを別途書けば加工もできるけど
どこまで制御したいかによる。
https://streamlink.github.io/api.html#streamlink.stream.HLSStream
コマンドライン同様どう取得するかを指定できるだけであまりうれしくなかった。
それでいいならI/Oとしては扱える。
MPEGコンテナ操作するプログラムを別途書けば加工もできるけど
どこまで制御したいかによる。
979デフォルトの名無しさん
2021/12/23(木) 23:19:13.76ID:Gg61L1jf 取得したデータをffmpeg-pythonに渡してoutするしかないんですかね。
980デフォルトの名無しさん
2021/12/24(金) 06:23:53.37ID:7mLGjij2 Visual Studio Code で python 3.9を使用していたのですが
python 3.10にアップデートしました
match文を使ってみたところ、インデントのエラーが表示されます
実行はできます
Visual Studio Codeで何か設定したりしなければいけないのでしょうか?
python 3.10にアップデートしました
match文を使ってみたところ、インデントのエラーが表示されます
実行はできます
Visual Studio Codeで何か設定したりしなければいけないのでしょうか?
981デフォルトの名無しさん
2021/12/24(金) 13:23:38.00ID:w5aKK4fu pylintが3.10に対応してないバージョンなのでは
982デフォルトの名無しさん
2021/12/24(金) 17:30:33.82ID:7mLGjij2983デフォルトの名無しさん
2021/12/25(土) 14:28:37.83ID:O1DganTQ vscは基本pylanceでええょ
984デフォルトの名無しさん
2021/12/25(土) 15:00:20.62ID:f1xUz6ll Pythonの拡張のデフォルトランゲージサーバーってpylanceにじゃなかった?
まだデフォルトになってないっけ
まだデフォルトになってないっけ
985デフォルトの名無しさん
2021/12/25(土) 18:39:11.66ID:wLd1kjlZ Jediに設定したことがあったらそっちが使われるからな
俺は今でもJediを使ってる
Pylanceだと、Python 2/3の互換性を維持しようとすると、
もう片方のインポートエラーとかが鬱陶しいんだよ
まぁ、黙らせる設定でもいいんだけど、Jediのほうが手っ取り早いので
俺は今でもJediを使ってる
Pylanceだと、Python 2/3の互換性を維持しようとすると、
もう片方のインポートエラーとかが鬱陶しいんだよ
まぁ、黙らせる設定でもいいんだけど、Jediのほうが手っ取り早いので
986デフォルトの名無しさん
2021/12/25(土) 23:26:55.99ID:4wn3W7Lt 10桁以上のint値を扱うと、自動で数字変換されてしまうのですが、どういう原理になってんでしょうか?
6631510311なら-1978424486に変換
ライブラリはNumpyとPandas
6631510311なら-1978424486に変換
ライブラリはNumpyとPandas
987デフォルトの名無しさん
2021/12/26(日) 01:16:59.54ID:bjcghV5B 32ビットintだと21億までしか表現できないから適当な数(ルールはあるが面倒だからここでは触れない)に置き換えられてる
64ビットintにすれば置き換えされない
64ビットintにすれば置き換えされない
988986
2021/12/26(日) 11:08:42.45ID:+UpYRQsi 解決しました。有難う
intにもビット指定があったんすね
intにもビット指定があったんすね
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 ★4 [蚤の市★]
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★5 [七波羅探題★]
- 【速報】 米トランプ政権声明 「中国が台湾を奪おうとする、いかなる試みも阻止する」 中国「レッドラインだ」 ★2 [お断り★]
- 元プロ野球選手・堂上隼人(43)を20代女性2人へのわいせつ未遂容疑で8回目の逮捕…これまでの被害者は10代・20代の女性11人に [Anonymous★]
- 【高校野球】なぜ『7回制』は反対多数でも止まらないか… 高野連が「全員の命」守るために貫く伝統より改革の姿勢 [冬月記者★]
- 「残業キャンセル界隈」若者が増加?「職務放棄」との批判も…“定時退社の権利”どこまで通用するか [七波羅探題★]
- 【高市悲報】自衛隊「実は事前に現場海域で中国軍から空母での発着訓練をすると通告がありました」え…?😨😨 [931948549]
- ネトウヨ「我が国の総理大臣可愛すぎるだろ!」 [201193242]
- 【高市速報】中国「このままだと日本が先制攻撃してくる」 [583597859]
- AI「その画像AIだぞ」AIぼく「そうなんだ助かる」
- 【悲報】山里亮太(南海キャンディーズ)さん [329329848]
- 【なにここ】🏡👊😅👊🏡【すごいなこれ‼】
