当スレに★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
■ このスレッドは過去ログ倉庫に格納されています
2021/10/01(金) 15:46:47.17ID:9qOHXj6D
2021/10/01(金) 15:51:56.85ID:131QCENJ
pythonの本この前かったわ
エロ画像収集するんだ
エロ画像収集するんだ
3デフォルトの名無しさん
2021/10/01(金) 16:14:27.26ID:xAAYN8E1 最近 youtube 側のクローラー対策アルゴリズムが変わったらしく
前に描いてた python スクリプトがエラー吐くようになった
適当に wait 入れてアクセス頻度落とすとエラー出ない訳だが
遅くなるのでぎりぎり最適の wait にしたいんだが肝心な google 側のアルゴリズムが不明
納得行く速度が出るまでごちゃごちゃ試すと BAN されちゃうかな?
前に描いてた python スクリプトがエラー吐くようになった
適当に wait 入れてアクセス頻度落とすとエラー出ない訳だが
遅くなるのでぎりぎり最適の wait にしたいんだが肝心な google 側のアルゴリズムが不明
納得行く速度が出るまでごちゃごちゃ試すと BAN されちゃうかな?
2021/10/01(金) 16:20:44.94ID:PaEGpo5A
契約して、YouTube API を使えば?
2021/10/01(金) 16:57:41.48ID:xAAYN8E1
おにただ正論
2021/10/01(金) 18:22:34.09ID:1X70H7Xp
python関係無いしw
2021/10/01(金) 19:40:08.43ID:CQRkUSDD
うちもとあるサイト毎週引っこ抜いてたらいつもはない臨時メンテがあってその直後非同期だと接続エラーはくようになったな
非同期なくしたら大丈夫だったので今はおとなしく1倍速で落としてるけど。IPBANされなかっただけマシか
非同期なくしたら大丈夫だったので今はおとなしく1倍速で落としてるけど。IPBANされなかっただけマシか
8デフォルトの名無しさん
2021/10/01(金) 19:59:28.33ID:XZxvwPE1 pypy(パイパイ)って発音しにくいよね、特に社内だと( ^ω^)・・・
2021/10/02(土) 11:36:25.91ID:rV5kYlEk
魑魑こそ正義
10デフォルトの名無しさん
2021/10/02(土) 15:09:37.96ID:yFRwYWli pypiのクローラーねぇ
11デフォルトの名無しさん
2021/10/02(土) 23:18:51.11ID:zWqv5K6j クソチョンw
2021/10/05(火) 14:54:46.13ID:eLBz+/wl
プライベートクラス変数にするメリットってどのようなときがあるのでしょうか・・
https://docs.python.org/ja/3/tutorial/classes.html#private-variables
>もし仮に MappingSubclass に __update 識別子を実装したとしても
これなら普通、Mappingクラスに実装しませんか?
それとは別にメリットとして、オブジェクトの中からしかアクセスしない変数
として使うなら、class外に書いた方がいいような?
https://docs.python.org/ja/3/tutorial/classes.html#private-variables
>もし仮に MappingSubclass に __update 識別子を実装したとしても
これなら普通、Mappingクラスに実装しませんか?
それとは別にメリットとして、オブジェクトの中からしかアクセスしない変数
として使うなら、class外に書いた方がいいような?
13デフォルトの名無しさん
2021/10/05(火) 15:14:02.22ID:I18ZMSNA >>12
神がコーディングするならどうでもいいけど
クラス外に置くとドキュメンテーションの点で劣る
識別子の置き換えが発生しないと意図しない副作用の可能性を残してしまう
ひとつでもそういう箇所があると疑心暗鬼になり生産性も落ちる
神がコーディングするならどうでもいいけど
クラス外に置くとドキュメンテーションの点で劣る
識別子の置き換えが発生しないと意図しない副作用の可能性を残してしまう
ひとつでもそういう箇所があると疑心暗鬼になり生産性も落ちる
2021/10/05(火) 15:48:22.95ID:+YzW1gaU
windows、python3.9.7で
fileにパス付きファイル名が与えられた時に、パス無しファイル名(拡張子無し)と拡張子を取得する場合
if "." in os.path.basename(file):
____ext_without_dot = os.path.basename(file).split(".")[-1]
____basenaname_without_ext = os.path.basename(file).removesuffix("." + ext_without_dot)
else:
____ext_without_dot = ""
____basenaname_without_ext = os.path.basename(file)
で問題ないでしょうか?
もっと綺麗な書き方あったら教えてください。
fileにパス付きファイル名が与えられた時に、パス無しファイル名(拡張子無し)と拡張子を取得する場合
if "." in os.path.basename(file):
____ext_without_dot = os.path.basename(file).split(".")[-1]
____basenaname_without_ext = os.path.basename(file).removesuffix("." + ext_without_dot)
else:
____ext_without_dot = ""
____basenaname_without_ext = os.path.basename(file)
で問題ないでしょうか?
もっと綺麗な書き方あったら教えてください。
2021/10/05(火) 15:58:59.57ID:UD2fraRe
>>12
その例は、Mappingクラスが、MappingSubclassのupdateメソッドではなくMappingクラスのupdateメソッドを呼び出したい場合の実装例。
Mappingの__update変数の中にMappingのupdateメソッドを格納しておけば、updateメソッドをオーバーライドされてしまってたとしても常に元のupdateメソッドを参照することができる。
サブクラスが__update変数自体をオーバーライドしようとしても、内部的に識別子を変えてるから大丈夫ですよ、そんなことできませんよ、と言っている
その例は、Mappingクラスが、MappingSubclassのupdateメソッドではなくMappingクラスのupdateメソッドを呼び出したい場合の実装例。
Mappingの__update変数の中にMappingのupdateメソッドを格納しておけば、updateメソッドをオーバーライドされてしまってたとしても常に元のupdateメソッドを参照することができる。
サブクラスが__update変数自体をオーバーライドしようとしても、内部的に識別子を変えてるから大丈夫ですよ、そんなことできませんよ、と言っている
2021/10/05(火) 16:07:03.30ID:UD2fraRe
2021/10/05(火) 16:13:46.71ID:gsPNBZV0
>>14
PurePath使え
PurePath使え
2021/10/05(火) 16:16:39.53ID:+YzW1gaU
2021/10/05(火) 16:32:23.12ID:UD2fraRe
>>18
splitextの戻り値の第2要素が空文字列だったら第1要素と第2要素をひっくり返せばよいのでは?
splitextの戻り値の第2要素が空文字列だったら第1要素と第2要素をひっくり返せばよいのでは?
2021/10/05(火) 16:35:35.19ID:+YzW1gaU
2021/10/05(火) 16:38:24.45ID:+YzW1gaU
>>19
"..jpg"のようなファイル名の場合ひっくり返してもうまくいきません
"..jpg"のようなファイル名の場合ひっくり返してもうまくいきません
22デフォルトの名無しさん
2021/10/05(火) 16:58:23.72ID:yytwxBBE >>14
from pathlib import Path
p = Path('.')
for file in p.iterdir():
ext = ''.join(file.suffixes)
without_ext = file.name.rstrip(ext)
from pathlib import Path
p = Path('.')
for file in p.iterdir():
ext = ''.join(file.suffixes)
without_ext = file.name.rstrip(ext)
2021/10/05(火) 16:59:34.11ID:UD2fraRe
import re
basename = ...
if m := re.match(r'(.*)\.([^.]+)$', basename):
. basename_without_ext = m.group(1)
. ext_without_dot = m.group(2)
めんどいからもう_
basename = ...
if m := re.match(r'(.*)\.([^.]+)$', basename):
. basename_without_ext = m.group(1)
. ext_without_dot = m.group(2)
めんどいからもう_
2021/10/05(火) 17:31:21.64ID:+YzW1gaU
>>22
これもbasenaname_without_extが""の場合うまくいきません
これもbasenaname_without_extが""の場合うまくいきません
2021/10/05(火) 17:36:31.51ID:+YzW1gaU
2021/10/05(火) 17:40:40.24ID:UD2fraRe
...のところにファイル名を入れて実行してください
basename = 'hoge.jpg'
basename = 'hoge.jpg'
2021/10/05(火) 18:00:15.70ID:yMBvIvKg
二重拡張子の場合はどうするの?
*.tar.zxとか
*.tar.zxとか
2021/10/05(火) 18:10:11.85ID:+YzW1gaU
2021/10/05(火) 18:29:46.70ID:+YzW1gaU
2021/10/05(火) 19:15:38.22ID:db3O09Qx
Python 3.10入れてみたけどIDLEのプロンプト表示が良くなってるね
最初違和感があったけど、これは見やすくて良いわ^^
新機能の構造的パターンマッチに注目ですな、これは使っていきたい
最初違和感があったけど、これは見やすくて良いわ^^
新機能の構造的パターンマッチに注目ですな、これは使っていきたい
2021/10/05(火) 19:55:29.85ID:CsDVkN/q
当方でも、パッケージ管理ソフトChocolateyにPython 3.10が来たようでPython 3.9から自動更新された
困ったことに、pywin32がまだPython 3.10に対応してない
困ったことに、pywin32がまだPython 3.10に対応してない
2021/10/05(火) 19:59:53.84ID:xYzI00Mc
33デフォルトの名無しさん
2021/10/05(火) 20:47:41.95ID:UD2fraRe >>28
import re
basename = ...
if m:=re.match(r'(.*)(\.([^.]+))|(.*)',basename):
. basename_without_ext = m.group(1) or m.group(4)
. ext_without_dot = m.group(3)
import re
basename = ...
if m:=re.match(r'(.*)(\.([^.]+))|(.*)',basename):
. basename_without_ext = m.group(1) or m.group(4)
. ext_without_dot = m.group(3)
2021/10/05(火) 21:03:44.19ID:db3O09Qx
>>14
from pathlib import Path
p = Path('hoge.jpg').resolve().absolute()
ext_without_dot = p.suffix[1:]
basename_without_ext = p.stem
from pathlib import Path
p = Path('hoge.jpg').resolve().absolute()
ext_without_dot = p.suffix[1:]
basename_without_ext = p.stem
2021/10/05(火) 21:38:18.61ID:+YzW1gaU
>>33
少し書き換えましたが希望した動作をしています
勉強になりますた、感謝
import os, re
file = "C:\\test\\a"
#file = "C:\\test\\a.b"
#file = "C:\\test\\.b"
#file = "C:\\test\\..b"
basename = os.path.basename(file)
if m := re.match(r'(.*)(\.([^.]+))|(.*)', basename):
____basename_without_ext = m.group(1) or ""
____ext_without_dot = (m.group(2) or m.group(4)).removeprefix(".")
print("\""+basename_without_ext+"\"")
print("\""+ext_without_dot+"\"")
少し書き換えましたが希望した動作をしています
勉強になりますた、感謝
import os, re
file = "C:\\test\\a"
#file = "C:\\test\\a.b"
#file = "C:\\test\\.b"
#file = "C:\\test\\..b"
basename = os.path.basename(file)
if m := re.match(r'(.*)(\.([^.]+))|(.*)', basename):
____basename_without_ext = m.group(1) or ""
____ext_without_dot = (m.group(2) or m.group(4)).removeprefix(".")
print("\""+basename_without_ext+"\"")
print("\""+ext_without_dot+"\"")
2021/10/05(火) 21:49:55.73ID:+YzW1gaU
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 空自機レーダー照射、音声データ公開 中国 ★3 [蚤の市★]
- 日銀「歴史的」利上げ迫る 35年ぶりの年間上げ幅、0.5%の壁を突破 [蚤の市★] [蚤の市★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 津波警報の発表中にグーグル検索、AIが「すべて解除」と誤情報 [蚤の市★]
- 低所得層のマクドナルド離れが深刻に 広がる「ファストフード格差」の真相 米国 [少考さん★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 【実況】博衣こよりのえちえち朝活🧪
- 寒すぎてハゲたんやが
- 【悲報】婚活女子(38)「婚活パーティーに行ったら婚活男性の大部分が年収350万円身長165cm未満のコミュ障子供部屋おじさんで絶望してる… [257926174]
- 「農林水産業」で賞与が激増!コメや卵など食料品高騰で大儲け [481941988]
- (´・ω・`)おはよ
- 朝からハイエースでカップラーメン食べてるドカタ
