[過去ログ] Pythonのお勉強 Part68 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
24: (ワッチョイ b717-EKt7) 2022/09/17(土) 16:45:25.92 ID:T/Ka29IB0(1) AAS
>>17
この関数の引数、
可変長引数のあとに連想配列では値がわたらないだろう
25: (ワッチョイ bf5f-W3aP) 2022/09/17(土) 17:15:48.49 ID:t52rQtHi0(1/2) AAS
初心者です。
seleniumでGoogleChromeを起動させたいのですが、
コードを実行しても一瞬起動するだけですぐに落ちてしまいます。
chrome,chromedriverともに105.0.5195.127です。
time.sleep()を使えば一応閉じることはありません。
ネットで調べたのですがchromeとchromedriverのバージョンを一致させれば解決できるらしいのですができなかったのでわかる人いたら教えてください。
from selenium import webdriver
import chromedriver_binary
driver = webdriver.Chrome()
import time
driver.get('外部リンク:www.google.com
26: (ワッチョイ ff10-8scs) 2022/09/17(土) 19:09:57.35 ID:6XxZTqFF0(1) AAS
chrome,chromedriverともに105.0.5195.127と書いてるのにバージョンがあってないとはいかに
27: (ワッチョイ ff10-yUIW) 2022/09/17(土) 19:25:38.45 ID:0jjtsTOp0(1) AAS
繰り返し使うプログラムならドライバー自動で取ってきてくれる
webdriver-manager使った方がいいよ
28: (ワッチョイ bf5f-W3aP) 2022/09/17(土) 20:15:49.18 ID:t52rQtHi0(2/2) AAS
webdriver-managerで上手くいきました。
ありがとうございます。
29: (ワッチョイ 9f2c-bG2j) 2022/09/17(土) 23:33:23.67 ID:eA0eWCp60(1) AAS
漏れは、Ruby でSelenium Webdriver を使っているけど、
Chrome の自動更新で、105.0.5195.127 になって、急に動かなくなった
ChromeDriver 105.0.5195.52 をダウンロードしたら、正常に動いた
30(6): (ワッチョイ 9f14-t1N9) 2022/09/20(火) 10:16:04.22 ID:0+YIm89I0(1/8) AAS
abspath → absolute path
__init__ → initialization
pardir → parent directory
curdir → current directory
getcwd → get current directory
chdir → change directory
こういうの、英語を略してるのだけど思うけど、元の略されてない英語のスペルを調べられるサイトとかありませんか?
毎回ググって出てきた検索結果ページで「abspath (absolute path)」みたいになってるのを探してるのですが、時間が掛かってしまいます
31: (ワッチョイ ff7b-59VB) 2022/09/20(火) 10:29:13.62 ID:pd2Ujokt0(1/2) AAS
>>30
>>30
32(1): (アウアウウー Sa5b-qGT6) 2022/09/20(火) 10:42:03.05 ID:7MkL1qhTa(1/4) AAS
cwd は current working directory
33(1): (ワッチョイ 9714-G+99) 2022/09/20(火) 10:54:15.10 ID:HlTpV5j10(1/3) AAS
>>30
まずは公式を見れば?
34(1): (ワッチョイ 9f14-t1N9) 2022/09/20(火) 10:57:11.96 ID:0+YIm89I0(2/8) AAS
>>32
抜けてました訂正助かります
略称の元を調べる方法で、地道にググる以外の方法とかも分かりませんか?
35(2): (ワッチョイ 9f14-t1N9) 2022/09/20(火) 11:02:55.38 ID:0+YIm89I0(3/8) AAS
>>33
python.org/ の検索窓にgetcwd, chdir, cwd, ch 色々入れてみても、ググった時と一緒で地道に複数タブでページ開いて探すのと同じでした
36(1): (アウアウウー Sa5b-qGT6) 2022/09/20(火) 11:06:51.68 ID:7MkL1qhTa(2/4) AAS
>>34
辞書を引くとか
37(1): (ワッチョイ 9714-G+99) 2022/09/20(火) 11:09:36.67 ID:HlTpV5j10(2/3) AAS
>>35
わからないときに調べるのではなくて、一括でリストみたいに知りたいということですか?そういうサイトは知らないです
38: (アウアウウー Sa5b-qGT6) 2022/09/20(火) 11:16:09.11 ID:7MkL1qhTa(3/4) AAS
知識がないのが問題だったら知識を得るか補助ツール使うしか無いんだよなあ
google翻訳みたいにリアルタイムでオーバーレイで適当な情報出してくれるやつがあればいいんだけども
39(2): (アウアウウー Sa5b-bNpc) 2022/09/20(火) 11:19:05.42 ID:EhDO16lPa(1) AAS
>>30
そういうサイトがあると便利だよな
是非作ってくれ
40(2): (ワッチョイ d72c-3X0R) 2022/09/20(火) 11:20:47.83 ID:DMd4PKyr0(1) AAS
sizes = list[(int, int),,,]
からmax_widthとmax_heightを取りたいんだけど
numpyなどの外部ライブラリなしだったら
max_width = [i[0] for i in sizes]
max_height = [i[1] for i in sizes]
が速くて見やすいですか?
もったいないからループ一回で両方ゲットできたらいいんだけど、天の声がそれは遅いというんです
41: (ワッチョイ 9f14-t1N9) 2022/09/20(火) 11:27:35.23 ID:0+YIm89I0(4/8) AAS
>>36
pythonの広辞苑みたいなのあるなら知りたいです
>>37
そんな感じです。イメージとしてはこんな感じ
外部リンク[mp4]:i.imgur.com
>>39
もうすでに誰かしら作ってそうな気がしたのですけど意外にないんですね
42: (ワッチョイ 9f14-t1N9) 2022/09/20(火) 11:30:55.43 ID:0+YIm89I0(5/8) AAS
なぐり書きしたので案の定スペルミスしてる
IME辞書みたいに誰かしら作って配布してたりしないのかな
あったら本当に便利だと思う
43: (アウアウウー Sa5b-qGT6) 2022/09/20(火) 11:35:44.18 ID:7MkL1qhTa(4/4) AAS
>>40
求めてるのはzipとちがうの?
44: (ワッチョイ ff7b-59VB) 2022/09/20(火) 11:35:51.10 ID:pd2Ujokt0(2/2) AAS
>>40
max_width = max(sizes)
max_height = max(sizes, key =lambda x:x[1])[1]
45: (ワッチョイ f733-E+l9) 2022/09/20(火) 12:11:40.27 ID:i/aW+9oN0(1/2) AAS
いまいちどういうものを欲してるのピンと着てないけど、存在しないという事はそういうことだろ
もしくは、誰もが思いつかなかった画期的なものの可能性はあるので、作れば人気でるかもしれないよ
46: (ワッチョイ f733-E+l9) 2022/09/20(火) 12:20:23.86 ID:i/aW+9oN0(2/2) AAS
エディタの補完機能とか知らないわけじゃないですよね
47: (ワントンキン MM7f-EKt7) 2022/09/20(火) 13:03:31.73 ID:dpaaQYZ2M(1) AAS
>>30
python が発展してきた歴史を知るといい
48: (ワッチョイ 9f01-bNpc) 2022/09/20(火) 13:32:48.86 ID:+UHOIJTp0(1) AAS
>>30
英語の略語を集めたサイトはあるけど一般的な略語はともかくabspathみたいな奴はヒットしないし逆にcwdみたいに短い略語はヒットしまくるから使いづらいよ
外部リンク:www.abbreviations.com
49(1): (ワッチョイ 9f01-vggc) 2022/09/20(火) 14:47:32.20 ID:yGE7fJx20(1/2) AAS
>>30
osモジュールの該当メソッドの説明を読むのがいいと思う
外部リンク[html]:docs.python.org
一般的なunixコマンドから拝借してるものが多いから
pythonでの一覧がないならそっちを調べるといいかもしれない
50: (ワッチョイ 9714-xcNX) 2022/09/20(火) 14:59:07.65 ID:HlTpV5j10(3/3) AAS
>>49
>>35
51: (ワッチョイ 9f14-t1N9) 2022/09/20(火) 15:12:53.61 ID:0+YIm89I0(6/8) AAS
30について回答くれた方々ありがとうございます。コメントで教えてもらったサイト見てみます
ググって意味を調べる時間の短縮目的は、そもそも我儘な要望だったかもしれません
52(3): (ワッチョイ 9f14-t1N9) 2022/09/20(火) 15:33:22.20 ID:0+YIm89I0(7/8) AAS
画像リンク[jpg]:i.ibb.co
望みの実行結果にはなるのですが、パスがないエラーを吐いてしまいます
本来は、os.mkdir(“パス名”)、os.makedirs(“パス名”)、のようにパス名を挿れるとのことですが
for文の変数を引数に渡したい場合はどう記述すればエラーを吐かないのでしょうか?
今朝始めたばっかなので用語の使い方間違ってるかもしれません
53(1): (ワッチョイ 9f01-vggc) 2022/09/20(火) 15:54:52.63 ID:yGE7fJx20(2/2) AAS
>>52
エラーメッセージにあるように空文字が渡されてるのがエラーの原因
split(‘\n’)した結果のfolder_listの中身を確認すると分かると思う
でもってsplit()じゃなくsplitlines()を使うといい
54: (ワッチョイ 9f14-t1N9) 2022/09/20(火) 16:08:35.44 ID:0+YIm89I0(8/8) AAS
>>53
おかげで解決しましたありがとうございます
テキストファイルに何もない改行がありました
55: (ワッチョイ bf2d-RYbe) 2022/09/20(火) 17:56:48.55 ID:xv+EClXQ0(1) AAS
問題とは関係ないけれど
パスを操作する時はpathlibのほうがいいよ
56(1): (ワッチョイ bf66-C6xl) 2022/09/20(火) 18:02:43.94 ID:GUzHgw240(1) AAS
正規表現で16進数を表すのに、いちいち[0-9a-fA-F]と書くのが面倒
もっとスマートに書けないものか
57: (ワッチョイ 17e0-PhD1) 2022/09/20(火) 18:12:50.27 ID:0B59Bo4G0(1) AAS
>>56
外部リンク:www.google.com
58: (ワッチョイ 9763-eAa0) 2022/09/20(火) 20:23:11.29 ID:zGhXnhGV0(1) AAS
case-insensitiveで [\da-f]
59(1): (ワッチョイ 9f14-t1N9) 2022/09/21(水) 19:43:53.71 ID:b5Bal3Dn0(1/4) AAS
画像リンク[jpg]:i.ibb.co
pathlibというのを使って>>52と同じことをやってみたのですが、書き方が間違ってる気がしてならないので指摘して欲しいです
line14-15は何で上手くいかないのかも教えてほしいです
60(1): (ワッチョイ ffbb-hJeG) 2022/09/21(水) 20:06:17.61 ID:Qxk2XzJU0(1/2) AAS
まず、12行目のmkdirで例外発生してない?
temporaryなんてらフォルダはchdirしてるからすでに存在してるんでしょう?
61: (ワッチョイ bf66-C6xl) 2022/09/21(水) 20:13:22.49 ID:VhW4jWqJ0(1) AAS
os関連の処理は互換性とか捨てて、subprocessでやるのが楽でしかも安定してる
62(3): (ワッチョイ ffdb-OuJ4) 2022/09/21(水) 20:30:50.72 ID:2GcRUbUk0(1/4) AAS
繰り返される任意の文字列を1回の繰り返しに直す方法ありませんか?
"abcdabcdabcdefg"→"abcdefg"(abcdの繰り返し)
"abababc"→"abc"(abの繰り返し)
"aabbaabbc"→"aabbc"(aabbの繰り返し)
パターンの長さはとりあえず固定でいいので(例えば4でabcdとaabbはマッチできる)一気に置換する方法ないでしょうか
63: (ワッチョイ 9f14-t1N9) 2022/09/21(水) 20:30:55.54 ID:b5Bal3Dn0(2/4) AAS
>>60
存在してます。path.rename()書いてない時は、同名のフォルダが作られて「すでに存在してる〜」みたいなエラーを吐いてました
そもそもpathlib使って>>52をやりたい場合は、osを使う必要がなかったりもするのでしょうか?
64(1): (ワッチョイ d733-E+l9) 2022/09/21(水) 20:31:19.96 ID:yjl6UhSi0(1/3) AAS
>>59
外部リンク:ideone.com
65: (ワッチョイ 9f14-t1N9) 2022/09/21(水) 20:52:17.39 ID:b5Bal3Dn0(3/4) AAS
>>64
参考に直して見たら無事にできました。ありがとうございます。
画像リンク[jpg]:i.ibb.co
66: (ワッチョイ 9f14-t1N9) 2022/09/21(水) 20:58:11.32 ID:b5Bal3Dn0(4/4) AAS
変数名とか色々、短く略して書いた方が良いのでしょうか?
入力時間的には大差ないので、見返した時に分かりやすいようにしてるのですが
これは初心者だからで、経験者から見ると見苦しいとか、むしろ略されてた方が見やすいとかありますか?
67(1): (ワッチョイ d733-E+l9) 2022/09/21(水) 22:11:39.31 ID:yjl6UhSi0(2/3) AAS
>>62
競プロの問題?
68(1): (ワッチョイ 9f01-E+l9) 2022/09/21(水) 22:25:22.90 ID:sVtx8qcf0(1) AAS
>>62
質問の意味がよくわからん
"abcdabcdefcdefg"の場合どうしたいの
69: (ワッチョイ d763-DwLj) 2022/09/21(水) 22:30:53.91 ID:4122FyYT0(1) AAS
LZ78の考え方の応用で行け
70: (ワッチョイ ffdb-OuJ4) 2022/09/21(水) 22:52:22.34 ID:2GcRUbUk0(2/4) AAS
>>67
普通に処理したいだけです
>>68
"abcdabcdefcdefg"なら"(abcdabcd)efcdefg"→"abcdefcdefg"だと思います
71: (ワッチョイ ffdb-OuJ4) 2022/09/21(水) 22:55:15.34 ID:2GcRUbUk0(3/4) AAS
あ、cdefcdefが繰り返されていたんですね…
最終的に人がチェックする工程があるので、先にマッチした方優先とかで大丈夫です
72(1): (ワッチョイ d733-E+l9) 2022/09/21(水) 23:11:15.16 ID:yjl6UhSi0(3/3) AAS
'abcabcdabcabcdefg'
だったら?
73(1): (ワッチョイ d74c-ldZd) 2022/09/21(水) 23:16:47.91 ID:VS1qJent0(1) AAS
長さ4固定でいいなら、正規表現あたりで
>>> import re
>>> re.sub(r'(....)\1+', r'\1', "abcdabcdabcdefg")
'abcdefg'
>>> re.sub(r'(....)\1+', r'\1', "aabbaabbc")
'aabbc'
74(1): (ワッチョイ 9f01-bNpc) 2022/09/21(水) 23:21:53.64 ID:757dNGj40(1) AAS
>>62
外部リンク:www.online-python.com
75: (ワッチョイ ffbb-hJeG) 2022/09/21(水) 23:30:41.78 ID:Qxk2XzJU0(2/2) AAS
そこにforを使うなんて
76: (ワッチョイ ffdb-OuJ4) 2022/09/21(水) 23:49:19.41 ID:2GcRUbUk0(4/4) AAS
>>73 >>74
ありがとうございます!
文中に含まれてるものにも対処したいので73を長さ変えながら複数回適用で使いたいと思います
77: (アウアウウー Sa5b-8eP5) 2022/09/22(木) 11:05:41.34 ID:u9/ouAZsa(1/2) AAS
>>39
いらね
78: (アウアウウー Sa5b-8eP5) 2022/09/22(木) 11:11:13.09 ID:u9/ouAZsa(2/2) AAS
>>72 の回答はよ
79: (ワッチョイ bf66-C6xl) 2022/09/22(木) 11:12:02.23 ID:ufV304t80(1) AAS
見てすぐ判らんようなもんは使うべきではないな
80: (ワッチョイ f7da-PMJU) 2022/09/22(木) 13:04:09.56 ID:kBSagdtc0(1) AAS
abracadabra
81(3): (ワッチョイ d72c-3X0R) 2022/09/23(金) 06:05:04.44 ID:l/gDdEyB0(1) AAS
x = [i for i in range(10)]
idxs = [start, end] # 0 <= start <= end <= max(x)かつend +=1
xが上記の場合
最小はidxs = [0, 1]
最大は idxs = [0, 11]
です。このとき
for i in idxs:
__x[i]
だと最後が11のときindexErrorになるんだけど
try exceptでcontinueする以外にいい書き方ないですか
if i == len(x): breakみたいなのとか
_idxs[1] -= 1
for i in idxs:
みたいなのは嫌です
82(1): (ガックシ 068f-G+99) 2022/09/23(金) 06:29:46.22 ID:ciin+wbx6(1) AAS
その11にはどういう意味があるんですか
83: (テテンテンテン MM8f-UC+/) 2022/09/23(金) 06:42:29.24 ID:j5q+73vfM(1) AAS
>>82
そもそも、「いい書き方」って何ですか
84(1): (ワッチョイ ffbb-AZvI) 2022/09/23(金) 07:14:40.79 ID:ILPrLpfC0(1) AAS
これ、やべぇな
外部リンク:gigazine.net
GitHub Copilot とかで広まっちゃうのか
85: (スッププ Sdbf-HYId) 2022/09/23(金) 09:31:57.58 ID:nucVVsrtd(1/2) AAS
>>84
これは完全に誤訳
翻訳元では、GitHub上の数多くのOSSにこの脆弱性が存在するからCopilot等がそれを学習して広がるかもしれないと言っているだけ
86(1): (ワッチョイ bf66-C6xl) 2022/09/23(金) 09:39:19.95 ID:08DmGtnT0(1) AAS
そんな風に読んだけど違うの?
87: (ワッチョイ d763-DwLj) 2022/09/23(金) 10:22:01.14 ID:7VR4OLWz0(1) AAS
確かにtarを使うリポジトリではcopilot経由で広がる可能性があるけど、tarを使うリポジトリなんてリポジトリ検索してもそんなにないので実数としては眉唾
依存関係から侵入してくる方がよっぽど可能性が高い
Copilotが批判されがちなので批判の文脈で喋ったほうが肯定的に聞いてもらえるだろうという余計な意図が入ってるのではと邪推してしまうね:)
88: (スッププ Sdbf-HYId) 2022/09/23(金) 12:26:25.28 ID:nucVVsrtd(2/2) AAS
>>86
> Trellixによると、35万件を超えるリポジトリがこの脆弱性に脅かされていると見られ、その多くでGitHub Copilotなどの自動ツールが使われているとのこと。
前知識なく普通にこれ読んだら、35万件のリポジトリがGitHub Copilptを使っている、そして、Copilotがその脆弱性の原因であると思うでしょ
というかこの記事書いた人はたぶんそのように誤解してる
> 外部リンク[html]:www.trellix.com
まあソースも推計方法や論理がガバガバで似たようなレベルだが
89: (アウアウウー Sa5b-8eP5) 2022/09/23(金) 13:17:45.83 ID:esyqbAqHa(1) AAS
>>81 が何を考えてるのか詳しく知りたいなωωω
90(1): (ワッチョイ b302-nX9g) 2022/09/24(土) 01:05:33.05 ID:WVAdUwxP0(1) AAS
>>81
インデックスなら0~10の番号で管理すべきじゃないの
endを取り出して使うときに+1すれば良いんじゃない
スライシングと混同してるのかな
91: (JP 0H1f-nvXy) 2022/09/24(土) 02:03:35.51 ID:6DJLRQJMH(1) AAS
>>90
外部入力でスライス範囲を受け取ってて(start, end)
その値を使いまわしてインデックスアクセスしたいんだろう
テーブル扱うGUIとかでままある
92: (ワッチョイ 1201-ut7I) 2022/09/24(土) 07:13:39.52 ID:52DloiQc0(1/2) AAS
単にインデックスの範囲とスライスを混同してるだけだろ
外部からの入力なら値のチェックは必須だしその時に調整しとけばいいだけ
93(1): (ワッチョイ 1610-Nf8B) 2022/09/24(土) 07:29:05.56 ID:RoHmfu6K0(1/2) AAS
一昔前のseabornのカラーマップだか忘れたけど1から数えて最後の数字を入れるようなインデックス指定を偶に見かける
[0, 10] → 0から9までと
[1, 10] → そもそも0が存在せず1から10
この2つの書き方にそれぞれ名前ついてたりする?
94(1): (ワッチョイ f2b7-AIux) 2022/09/24(土) 08:37:46.88 ID:3mLYFKO40(1) AAS
>>93
前者は「半開区間」として [0,10) といった表記にするのをよく見る
95: (ワッチョイ 1610-Nf8B) 2022/09/24(土) 09:09:58.79 ID:RoHmfu6K0(2/2) AAS
>>94
あーたしかに数学で見るわ
96: (ワッチョイ 1e66-yYUR) 2022/09/24(土) 09:21:01.36 ID:P3HsQQA/0(1/3) AAS
メモリマップとかで、
A: 0x0000 - 0x0fff
B: 0x1000 - 0x1fff
みたいに末尾をfffにせずに、末尾は1足して表記する、という約束にした方が使いやすい
97: (ワッチョイ 9279-tX/F) 2022/09/24(土) 09:53:57.04 ID:N1C+NhRL0(1) AAS
そうすると最後は
F: 0xf000 - 0x10000
と最後だけ2バイトでは表記しきれなくなるね
98(1): (ワッチョイ 1e66-yYUR) 2022/09/24(土) 10:03:22.17 ID:P3HsQQA/0(2/3) AAS
それはもう0でいい
99: (ワッチョイ 1228-AIux) 2022/09/24(土) 10:26:03.89 ID:8OhmHPew0(1/3) AAS
すみません、プログラミング初心者です、python構築について質問があります
python3.10.7をインストールしたのですがコンドプロンプトで確認したらpython 3.9.12になっています
もしかしたら以前DLしてたのかと思って探しても見つからないのですが
こういうものなのでしょうか?
100: (ワッチョイ 1228-AIux) 2022/09/24(土) 10:37:33.81 ID:8OhmHPew0(2/3) AAS
すみません、調べてみたらanacondaの方にpythonが入ってたみたいです
101(1): (ワッチョイ 372c-nvXy) 2022/09/24(土) 10:54:04.69 ID:gdtERKOB0(1/2) AAS
まーたanaconda被害者がひとり…
102: (ワッチョイ 1228-AIux) 2022/09/24(土) 10:55:37.98 ID:8OhmHPew0(3/3) AAS
>>101
そんなに有名な事でしたか…
調べても出てこなかったので
103: (ワッチョイ 3733-6qsd) 2022/09/24(土) 11:18:28.18 ID:4ctEaw520(1) AAS
君は悪くない、anacondaも悪くない
anacondaを進める入門的な書籍やサイトが悪い
104: (ワッチョイ 3763-eFJV) 2022/09/24(土) 11:29:33.35 ID:8t4kL4/n0(1) AAS
pipでバイナリを配布できなかった時代ならまだしも、今そんな時代じゃないしな~
105: (ワッチョイ 1e66-yYUR) 2022/09/24(土) 11:34:58.91 ID:P3HsQQA/0(3/3) AAS
何かのツールをインストールするとpythonも一緒にインストールされるのはよくある
python2だったりもする
大抵は、自分用のバイナリを自分で使うだけなので迷惑はかけないけど、
行儀の悪い奴もいる
106: (ワッチョイ 1201-ut7I) 2022/09/24(土) 12:01:38.29 ID:52DloiQc0(2/2) AAS
>>98
さすがにそれはアホすぎる
107: (ワッチョイ 372c-nvXy) 2022/09/24(土) 12:23:45.45 ID:gdtERKOB0(2/2) AAS
未だにpython事始めで検索すると
無責任な入門サイトの「anaconda入れとけ☆」 ばっかり
いやべつにいいんだけどさあanacondaでも。オールインワンで便利なのも分かるけど
108: (ワッチョイ 4b17-NGtF) 2022/09/24(土) 13:25:40.55 ID:mEJjKZc00(1) AAS
anacondaでもpipでも両方使えばいいジャマイカ
109: (オッペケ Sr47-Nf8B) 2022/09/24(土) 13:33:00.23 ID:+zHy6u5Kr(1) AAS
condaのコマンドで新しい環境作れるようにしたらスタンドアロンのpythonが外れた記憶ある
110: (ワッチョイ 5f01-DGnU) 2022/09/24(土) 15:33:58.69 ID:BGgCMaIl0(1) AAS
俺も初心者の頃はアナコンダ入れてた。
けど後から無駄も多く必要ないことがわかったのでアンインストールした。
pythonとVSCodeあれば事足りる。
111(2): (ワッチョイ 1214-P81A) 2022/09/24(土) 17:32:16.78 ID:nYu0cH9J0(1/2) AAS
ファイル名に使えない文字を全角に変換するコードってこんなに長くなるものなんですか?
外部リンク:qiita.com
name_ng = ["/","\",":","*","?","<",">","|"]
こんな感じでリストに入れてfor文の中で replace で置換すれば良いんじゃないかと思ったけど、リストにする段階でエラーになります
上記のURLの記述が最適解?
簡略化された書き方があったら教えてほしいです。
112(1): 2022/09/24(土) 17:37:12.69 ID:xsaou6hs(1) AAS
a=True
b=True
aかつbがTrue、それ以外の全て
の条件って
if not (a and b): でよかったっけ・・?
113(1): (ブーイモ MMde-zdrj) 2022/09/24(土) 18:00:41.70 ID:thjqxE2JM(1) AAS
>>111
translate使えばforすらいらない
114(1): (ワッチョイ b247-tX/F) 2022/09/24(土) 18:29:31.09 ID:LDtPUxey0(1) AAS
>>111
その記事が最適かどうかは別問題として、まず0x5cをちゃんとエスケープして、あなたの考えを動くコードとして完成させよう
その上で、記事のコードと分かりやすさや速度を気の済むまで比較してみればよい
115: (ワッチョイ 1214-P81A) 2022/09/24(土) 19:22:50.96 ID:nYu0cH9J0(2/2) AAS
>>113
調べて試してみます
>>114
そもそも ”\” は文字列としても単体では使うことができない感じですかね?
知らなかったです。教えてくれてありがとうございます
116: (アウアウウー Sa43-a1Je) 2022/09/24(土) 20:25:24.85 ID:7pBAspe1a(1) AAS
r'hoge\hoge'
117: (ワッチョイ 127d-nvXy) 2022/09/25(日) 00:00:20.77 ID:TfTFVrn20(1) AAS
>>112
if all([a, b]):
else
118: (ワッチョイ 1e66-yYUR) 2022/09/25(日) 00:30:59.06 ID:wq9M03AC0(1/2) AAS
allとanyは積極的に使おう
フラグを別に持つとか途中で抜けてループ変数を見るとか、
何でレガシーな言語はそれで満足してたのか判らん
119: (ワッチョイ b302-QcAE) 2022/09/25(日) 02:03:20.35 ID:ouzeiwB30(1) AAS
今日からPython始めたんだけど、エラーが出て動かなくて悩んでたらインデントが原因だったw
調べたらインデント自体プログラム構造的に意味を持ってたんだな。。。
120: (ワッチョイ 1214-P81A) 2022/09/25(日) 05:32:21.54 ID:WCcUyzUQ0(1/2) AAS
少しコードが長くなってきたので、関数を定義してみようと思ったのですが
関数を使うくらいなら、最初からclassとmethodでやった方が後々便利ですかね?
それから現段階ではまだinstance変数を使うかどうかは不明ですが
classの最初に__init__は決まり文句として書いておいて良いのでしょうか?
仮に全く使わなかった場合にバグの元になったりするのでしょうか?
121: (ワッチョイ 372c-nvXy) 2022/09/25(日) 05:38:14.60 ID:iEmY5l+s0(1/2) AAS
そのレベルならまず関数に慣れよう
classはそのあと
122: (ワッチョイ 1214-P81A) 2022/09/25(日) 05:54:55.13 ID:WCcUyzUQ0(2/2) AAS
了解しました
123: (ワッチョイ 96bb-sDLX) 2022/09/25(日) 11:02:47.56 ID:sQFmQmse0(1) AAS
classを使うほうが常に優れていると思ってるなら認識を改めたほうがいいよ。
classと関数両方使えるがpythonのメリット。
標準ライブラリだって両方共存してるのにどちらかを捨てるなんてもったいない
124: (ワッチョイ 4b17-NGtF) 2022/09/25(日) 11:22:42.32 ID:Sdaj2srm0(1) AAS
自己満だからといっていつも意識的にそれらを考えていかなければより良い設計はできないのかもしれない
125(1): (ワッチョイ b302-nX9g) 2022/09/25(日) 11:43:23.68 ID:rlnwElI30(1) AAS
クラスはメンバ変数にselfが強制だからコードが冗長になって嫌だわ
126: (オッペケ Sr47-d9EM) 2022/09/25(日) 12:37:00.29 ID:uj3dGGMEr(1) AAS
>>125
インデントも深くなるし、状態持つ必要が無ければモジュール化で十分よな
上下前次1-新書関写板覧索設栞歴
あと 876 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.044s