[過去ログ] Pythonのお勉強 Part68 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
810
(2): (ワッチョイ 6347-gR3A) 2022/11/14(月)21:33 ID:z4y/4erZ0(2/2) AAS
temp = min(input, upper_limit)
output = max(temp ,lower_limit)
これを合体させただけなんだけどな
811: (ワッチョイ 1b3b-spp/) 2022/11/14(月)21:55 ID:aUHlXgrZ0(1) AAS
関数化せずにインラインでそれ書いてきたらレビューでハネる
812: (ワッチョイ 2514-FE2V) 2022/11/14(月)21:57 ID:CWXyQGgF0(1) AAS
頻度次第
813
(1): (ワッチョイ 2301-v+FM) 2022/11/14(月)22:11 ID:gxurLVtj0(1) AAS
>>809
まあ適宜空白入れろよとは思う
a = max(min(a, _max), _min)
814: (テテンテンテン MM4b-SGX1) 2022/11/14(月)22:20 ID:xHaIXgz6M(1) AAS
>>810
そもそもmaxの中にminがある時点で頭がおかしくなる俺の場合
815: (ワッチョイ 2379-zDZ1) 2022/11/14(月)22:25 ID:SUeRZblV0(1) AAS
import ctypes
SendMessage = ctypes.windll.user32.SendMessageW
hWnd = ごにょごにょ
pos = (y << 16) + x
SendMessage(hWnd, 513, 0, pos) # WM_LBUTTONDOWN
SendMessage(hWnd, 514, 0, pos) # WM_LBUTTONUP

>>806
こんな感じかな
どのみち、どう処理されるかは相手次第になってしまうけど
背面とか最小化とか、最悪トップに出てきたり
816
(1): (ワッチョイ 4b10-TWxH) 2022/11/14(月)22:50 ID:dRHiUVHI0(1) AAS
>>813
それは自動整形機能の仕事で人間が気遣うことではない
817: (スップ Sd03-WM47) 2022/11/14(月)23:20 ID:XZXiqJkqd(1) AAS
>>803
pyautoguiで一歩進みました!ありがとうございます!
818
(1): (ブモー MMeb-p9cw) 2022/11/15(火)01:47 ID:qykSWSRkM(1) AAS
>>810
その2行なら受け入れるけど合体させるのは意味はないじゃんって思うよ
819: (ワッチョイ 2363-H0Ic) 2022/11/15(火)01:54 ID:JTzzJATw0(1/3) AAS
関数名と変数名を工夫すれば良いと思う
_付けるだけでそれを区別するのはちょっと
820: (ワッチョイ c597-AMkR) 2022/11/15(火)01:57 ID:7joAI/8k0(1) AAS
>>818
それは、+=や、f.write(','.join([若干長い内包表記]))が許されるかみたいな話とも繋がっていて、
ぶっちゃけ何度も出て来ればこんな簡単なのは1行にしたくなると思うよ
内包表記だって1行で書きたいから書くって側面もあるわけじゃない。
821: (ワッチョイ 2301-v+FM) 2022/11/15(火)04:53 ID:Ohwd0nE10(1/2) AAS
>>816
掲示板に書く時におまえが気遣えよって言う指摘だぞw
822: (ワントンキン MMa3-OAfI) 2022/11/15(火)05:06 ID:9j9A/xThM(1) AAS
a = range_ni_osameru(_min, a, _max)

どや!
823
(1): (ワッチョイ 2379-zDZ1) 2022/11/15(火)07:01 ID:+rxWDVlZ0(1) AAS
def range_ni_osameru(_min, a, _max):
 return _min if a < _min else a if a < _max else _max

こうかな!
824: (アウアウウー Saa9-v+FM) 2022/11/15(火)07:23 ID:GEd0aXfXa(1) AAS
>>823
俺なら
return _min if a < _min else _max if _max < a else a
って書くかな
825: (ワッチョイ 6347-gR3A) 2022/11/15(火)07:58 ID:gBqAZwZY0(1/7) AAS
行数というよりは、中間の変数を登場させたくない
合体させるにしても、後ろに繋げていく方式とネストを深くしていく方式があって、
ネストだとどうしても可読性を損なう
826: (オッペケ Src1-wjvv) 2022/11/15(火)09:57 ID:8PAOVKkjr(1) AAS
普段可読性重視だけどリスト内包表記だけは速度変わりすぎるから超複雑にしちゃう
827
(2): (ワッチョイ 6347-gR3A) 2022/11/15(火)10:05 ID:gBqAZwZY0(2/7) AAS
100倍変わるなら考えるけど、倍程度ならどうでもいい
828
(1): (ワッチョイ a300-9aJV) 2022/11/15(火)10:09 ID:UuLVn12M0(1/3) AAS
内包表記も+=も三項演算子もlambdaも、(言語設計者に対して)日和って半端なもん入れてんじゃねーよって思う。
829: (ブーイモ MM69-fwKM) 2022/11/15(火)11:23 ID:kX2rkZkfM(1) AAS
lambdaは1.0からあったような
830: (アウアウウー Saa9-qc8G) 2022/11/15(火)11:40 ID:f326q+3ca(1) AAS
ごてごて書けるラムダを入れないのは良心を感じるけどなあ
831: (ガックシ 0669-AMkR) 2022/11/15(火)11:49 ID:Hm3rex5D6(1) AAS
>>827
処理時間がめちゃ長くて100倍速くしたいならそもそもCythonとか考える
処理時間ちょっとイラッとするぐらいだったら内包表記で倍速くなれば十分なので内包表記止まりかな
832: (ワッチョイ 05e0-spp/) 2022/11/15(火)12:21 ID:8tiGCKxN0(1) AAS
サンプルコードがlambdaで書かれがちなのもあって
その場で関数定義できるの知らずにごてごて書くケースよく見かける
悲しい
833: (ワッチョイ a300-9aJV) 2022/11/15(火)12:29 ID:UuLVn12M0(2/3) AAS
なるほどlambdaに関しては色々意見あるな。半端な知識で物言った俺が悪かったわ。
834: (テテンテンテン MM4b-Os9u) 2022/11/15(火)12:41 ID:LyOwpv5bM(1) AAS
ランバダはアローより判りやすいとは思う
835: (アウアウウー Saa9-hD5E) 2022/11/15(火)15:38 ID:0yW3pQONa(1) AA×

外部リンク:d.hatena.ne.jp
Twitterリンク:daikidomon
Twitterリンク:5chan_nel
836: (アウアウウー Saa9-FFna) 2022/11/15(火)16:33 ID:QGmQMBHUa(1/2) AAS
>>827
30分かかるループの中心で何度も使われてたら
倍速になったら15分短縮出来るし
100分の1なら数秒で終わるんだが
837
(1): (アウアウウー Saa9-FFna) 2022/11/15(火)16:35 ID:QGmQMBHUa(2/2) AAS
>>828
内包表記: あり
+=: あり
lambda: あり

三項演算子: お前は遺憾
838: (ワッチョイ 6347-gR3A) 2022/11/15(火)17:03 ID:gBqAZwZY0(3/7) AAS
とりあえず読みやすいように書いて、速度で困ったら考える
839: (ワッチョイ 4bcf-gPc0) 2022/11/15(火)21:46 ID:9SlnRoJw0(1/2) AAS
>>837
内包表記? あり
:+= ? あり
:lambda ?あり
:三項演算子?お前は遺憾
:以下略
ということですね
840: (ワッチョイ 6347-gR3A) 2022/11/15(火)21:56 ID:gBqAZwZY0(4/7) AAS
C言語とかの伝統的な三項演算子と違って、
pythonのはなかなかいけてると思うけど
841: (ワッチョイ a300-9aJV) 2022/11/15(火)21:57 ID:UuLVn12M0(3/3) AAS
他の言語なら三項演算子は大好きなんだけどPythonだと異物感がある
842: (ワッチョイ 4b10-TWxH) 2022/11/15(火)22:05 ID:1JRqHGzu0(1/2) AAS
並びが
(Trueの場合) (条件) (Falseの場合)
になるのが気に食わん
843: (ワッチョイ 4b10-S5Kl) 2022/11/15(火)22:26 ID:5Bygj+p/0(1) AAS
わかる
慣れだろうけどさ
844: (ワッチョイ 2301-v+FM) 2022/11/15(火)22:38 ID:Ohwd0nE10(2/2) AAS
英文的には違和感無いのかもしれないけどねぇ...
845
(1): (ワッチョイ 6347-gR3A) 2022/11/15(火)22:47 ID:gBqAZwZY0(5/7) AAS
if <condition> then <val1> else <val2>
も英語として不自然さは無い
それを、?と:にするのは無理がある

冒頭からifで始まるとif文と区別が付かないので、少し倒置して、
<val1> if <condition> else <val2>
も一応文として読める
C言語よりはまし
846
(1): (ワッチョイ 4bcf-gPc0) 2022/11/15(火)22:59 ID:9SlnRoJw0(2/2) AAS
通常のif文でも処理(結果)を先に書く新しい言語を作るか
847
(1): (ワッチョイ 4b10-TWxH) 2022/11/15(火)23:05 ID:1JRqHGzu0(2/2) AAS
プログラミング言語に英文的な自然さとか求めて無いんだわ
読む順と評価順が入れ替わってんのがセンス無いと思う
848: (ワッチョイ 6347-gR3A) 2022/11/15(火)23:08 ID:gBqAZwZY0(6/7) AAS
処理をifで修飾するというのは既にある
elseは知らん
849: (ワッチョイ 2363-H0Ic) 2022/11/15(火)23:10 ID:JTzzJATw0(2/3) AAS
~よりはましって、自信がないみたいな感じ
850: (ワッチョイ 6347-gR3A) 2022/11/15(火)23:17 ID:gBqAZwZY0(7/7) AAS
C言語よりは遥かにましである、ふはははは
851: (ワッチョイ 2363-H0Ic) 2022/11/15(火)23:20 ID:JTzzJATw0(3/3) AAS
そうする合理的理由を説明すれば納得するものじゃないの?
そういうのを聞きたいんだよ
852: (ワッチョイ 2302-gPc0) 2022/11/16(水)02:18 ID:+BRGBknF0(1) AAS
英語だと if が後置されることもあるからなあ
内包表現は数学の集合の書き方からすれば普通
ラムダは lisp のラムダ関数から考えれば普通

一応理屈はあるけど
853: (ワッチョイ 0509-BvCT) 2022/11/16(水)06:47 ID:hZtfMd7O0(1) AAS
三項演算子だけじゃなくて、Perlみたいに後置ifを実装してれば違和感ないんだろうね

(Trueの場合) if (条件)

Falseの場合はなにもしないけど、Pythonだとpassがあるから三項演算子だけで十分って判断かな
854
(1): (ワッチョイ a300-5Hvp) 2022/11/16(水)07:48 ID:Mu0tRvhG0(1) AAS
そうか結構、式である三項演算子や内包表記やlambdaも受け入れられてるんだなぁ。そうなるとなんでmatchを式にしなかったのか。コレガワカラナイ
855: (ブモー MMeb-p9cw) 2022/11/16(水)08:23 ID:kn7mTN5OM(1) AAS
>>847
これ正解
856: (ワッチョイ 4bcf-H0Ic) 2022/11/16(水)08:33 ID:16ZvLDN40(1) AAS
後置ifは文だから値を返す必要がない(=elseは不要)。三項演算子は式だから値を返すのに必要。
なんでこの2つを混ぜたような文法にしたのかなんとも不思議。
857: (アウアウウー Saa9-89mF) 2022/11/16(水)10:19 ID:8bWIhcn5a(1/2) AAS
どこが変なのかわからん
俺の英語スキルが高杉なせいか…
858: (ワッチョイ 0557-spp/) 2022/11/16(水)11:29 ID:hZGrSsPO0(1) AAS
lambdaといっしょでゴチャゴチャ書きづらいのが良心
実際は構文解析が楽だとか余計な()が不要とかあるんだろうけど
859: (アウアウウー Saa9-+rXr) 2022/11/16(水)11:35 ID:OkTwZqPda(1) AAS
lambda calculus のif then else combinatorの語順やろ

外部リンク:ja.m.wikipedia.org
860: (ワッチョイ 6347-gR3A) 2022/11/16(水)11:56 ID:g3qERw/e0(1) AAS
lambdaは綴りが覚えられないから嫌だ
861: (アウアウウー Saa9-89mF) 2022/11/16(水)12:13 ID:8bWIhcn5a(2/2) AAS
ランバダっておぼえとけ
862: (ブーイモ MM69-fwKM) 2022/11/16(水)12:27 ID:U3lBmIjhM(1) AAS
全部英単語でつなげるから、エディタで色変えたとしても見づらいってのはすごく感じる
863: (アウアウウー Saa9-FFna) 2022/11/16(水)17:37 ID:z+sJwdsYa(1/3) AAS
>>846
uby
864: (アウアウウー Saa9-FFna) 2022/11/16(水)17:39 ID:z+sJwdsYa(2/3) AAS
>>845
findall で解決
865: (アウアウウー Saa9-FFna) 2022/11/16(水)17:39 ID:z+sJwdsYa(3/3) AAS
アンカ間違ってた >>854
866
(1): (ワッチョイ 6347-gR3A) 2022/11/17(木)17:09 ID:HF5V3LeY0(1/5) AAS
import re
str = 'abc123456defg'
s = 'bc'
m = re.search(f'{s}(\d{2})', str)
if m:
 print(m.groups()[0])

\d{2}だと12が表示される
\d{1}とか\d{6}だと想定と違う
なんで?
867: (ワッチョイ 237e-AMcT) 2022/11/17(木)17:18 ID:AwlB4ADs0(1) AAS
そりゃ、想定が間違えているから、以外になんか考えられるのかい?
何を想定していてどうなったかも説明しないで、想定と違う!って
言われてもね、人に説明する気も無けりゃ教えを乞う態度でもないし
何したいの?日記ならよそでやってくれる?
868: (ワッチョイ 05cd-spp/) 2022/11/17(木)17:57 ID:WlhESVTj0(1) AAS
>>> f'{s}(¥d{2})'
'bc(¥d2)'
869: (ワッチョイ 15cf-gPc0) 2022/11/17(木)18:01 ID:F2Az3Gmh0(1) AAS
インデントが全角スペースなのが全てを表してる
870: (ワッチョイ 6347-gR3A) 2022/11/17(木)18:02 ID:HF5V3LeY0(2/5) AAS
f文字列の中で{m,n}を使うにはどうすれば
871: (ワッチョイ dd08-G/DK) 2022/11/17(木)18:20 ID:OILH8ycX0(1) AAS
口のきき方覚えてから出直せ
872: (ワッチョイ ed02-OAfI) 2022/11/17(木)18:28 ID:qm+2WY7I0(1) AAS
まあまあ、お勉強スレなんだし未熟者同士で問題解決していくスタンスで良いんじゃないの
873
(1): (ワッチョイ a301-xL83) 2022/11/17(木)18:31 ID:p1aORMOX0(1) AAS
そんなイライラしなくても{{´·ω·`}}
874: (ワッチョイ 6347-gR3A) 2022/11/17(木)18:42 ID:HF5V3LeY0(3/5) AAS
>>873
できた
875: (ワッチョイ cb68-Os9u) 2022/11/17(木)19:51 ID:SY2MYyO/0(1) AAS
f文字列で¥とか/区切りの一部だけを取るような事出来ないのかな?
splitしてスライスで取るのはどうも好かん
876
(1): (ワッチョイ c533-BvCT) 2022/11/17(木)21:45 ID:SeoZPm6s0(1) AA×
>>1>>866

外部リンク:techiedelight.com
外部リンク:ideone.com
外部リンク:pastebin.com
外部リンク:dpaste.com
877
(1): (ワッチョイ 6347-gR3A) 2022/11/17(木)21:54 ID:HF5V3LeY0(4/5) AAS
それも必要悪だな
貼った先が無くなった後でログを見た人に何の知見も残せない
878: (US 0Ha3-XgLS) 2022/11/17(木)23:08 ID:kmneQuTyH(1/2) AAS
>>876
>デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
一回 python を選択すれば、あとはずっと選択したpythonのままになりますよ
879: (US 0Ha3-XgLS) 2022/11/17(木)23:09 ID:kmneQuTyH(2/2) AAS
>>877
いまのところ ideone はずっと消えずに残っていますよ
2chスレ:tech
880: (ワッチョイ 2363-H0Ic) 2022/11/17(木)23:12 ID:lsW0mIad0(1/2) AAS
何年くらい残れば良いんですかい?
881: (ワッチョイ 6347-gR3A) 2022/11/17(木)23:18 ID:HF5V3LeY0(5/5) AAS
外部を利用する根拠がインデントの崩壊だけなら、崩壊していないのだから不要
なるべく単体で完結していた方がいい

コードが長いとか、修正後のコードと比較したいとかになると、
さすがに掲示板の機能を超える
882: (ワッチョイ 2363-H0Ic) 2022/11/17(木)23:37 ID:lsW0mIad0(2/2) AAS
そういうのは公開する本人が決めれば良いのでは
883: (ワッチョイ 4bcf-gPc0) 2022/11/17(木)23:48 ID:mPrTa5cw0(1) AAS
今更ここで議論する課題でもない
この件はペンディングとして、運用時に自己判断でよいだろう
884: (ブーイモ MM4b-5kBA) 2022/11/18(金)01:00 ID:pHizXfulM(1) AAS
短いコードなら直接貼ったほうが断然いいわな
885: (ワッチョイ ad2c-WM47) 2022/11/18(金)01:14 ID:E2GzXrNb0(1) AAS
日付(○年○月○日 ○時○分)を抽出してクリップボードにコピーするのってどんな感じでやればいいですかね…
886: (ワッチョイ 2514-FE2V) 2022/11/18(金)01:26 ID:wTg9qmzl0(1) AAS
何からだよ
887: (ワッチョイ 05cd-spp/) 2022/11/18(金)02:58 ID:q5cRZ16n0(1) AAS
コピーはコマンドでできるから
Windowsならcopy、Macならpbcopy
テキスト抽出して外部コマンド実行するだけ
888
(1): (ワッチョイ 154f-FFna) 2022/11/18(金)09:55 ID:Wj1K/ZC10(1) AAS
例えば、Ruby でクリップボードを使うなら、

あらかじめ、クリップボードへ「 あい 」を入れておいてから、
以下のスクリプトを実行すると、
文字列の前後にある、空白類が削除されて「あい」となる

ただし、RubyはUTF-8 だから、Windows のCP932 と変換する必要がある

# クリップボード内の複数行文字列の、各行の先頭・末尾から、
# 連続する空白類を除去して、クリップボードに入れる

str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換
省4
889: (ワントンキン MMa3-OAfI) 2022/11/18(金)11:23 ID:P6oHPIQ5M(1) AAS
ググったらpyperclipって便利なモジュールがあるらしいよ
前レスから予想するにウィジェットの日付けをメモ帳に貼り付ける感じかな
ウィジェットからのデータ取得はウィジェット作成時にStringVarを関連付けてget,setで取得すれば良い
ログを残すならファイル入出力でやるべきではと思うけど
890: (ワッチョイ 4bbb-fwKM) 2022/11/18(金)12:03 ID:r5yXYIm80(1) AAS
>>888
891: (ワッチョイ 9b66-gR3A) 2022/11/18(金)12:36 ID:xtaMWlke0(1) AAS
このrubyの人はpython使ってるの?
892: (ワッチョイ 4b5f-4ilx) 2022/11/19(土)00:25 ID:GBhwsA7a0(1) AAS
すみません、質問いいですか?
893: (ワッチョイ 77f0-b3EZ) 2022/11/19(土)00:47 ID:UL/detO70(1) AAS
rubyの人最近見なくなったと思ったら
また自己主張してきたな
894: (ブーイモ MM8e-nsJM) 2022/11/19(土)11:12 ID:mOhQy7yjM(1) AAS
半島人は日本人女性を強姦しまくってる!
895: (ワッチョイ 0610-zeL/) 2022/11/19(土)11:38 ID:N2zY4TUb0(1) AAS
千葉県民に喧嘩売ってんのかコラ
896: (ワッチョイ 5701-kfYZ) 2022/11/19(土)12:30 ID:o7Lf802R0(1/2) AAS
千葉県は恐ろしい田舎なうえ、今もドンドン衰退してる最中。
でも、関東以外の人はそんなこと知らないから、東京の一部みたいな顔できるよ。
897: (ワッチョイ e263-TaOI) 2022/11/19(土)12:31 ID:xRYqKE7Q0(1) AAS
横須賀市民 「東京原人と一緒にしないでくれ」
898: (ワッチョイ 5701-kfYZ) 2022/11/19(土)12:43 ID:o7Lf802R0(2/2) AAS
逆に考えることもできるよ。
電車一本で東京に出れる田舎って最強。
みたいな。
899: (JP 0H43-NYGE) 2022/11/19(土)13:00 ID:A7QHTxNqH(1) AAS
ぶぼぼ
900: (ワッチョイ 4e66-QT9j) 2022/11/19(土)13:04 ID:zkXQWCUr0(1) AAS
沿線の人だけやん
901: (アウアウウー Sa3b-kfYZ) 2022/11/19(土)16:23 ID:F8GIHVyHa(1) AAS
久里浜も上総一ノ宮も似たようなもんやろ
902
(4): (ワッチョイ ef14-kfYZ) 2022/11/20(日)02:18 ID:Wzaj0Q6e0(1) AAS
すみません、python超初心者なのですが
外部リンク:github.comのpython LpkUnpacker.py /path/to/lpk outputdir /path/to/config.jsonのコードを使いたいのですが、何回やっても

python LpkUnpacker.py "C:\11302997995514316369.lpk" "C:\aaaa" "C:\config.json"
^^^^^^^^^^^
SyntaxError: invalid syntaxのエラーが出てできません。

どうかご教授の程よろしくお願いいたしますm(__)m
903: (ワッチョイ 9714-mZSb) 2022/11/20(日)02:34 ID:TRWjspKo0(1) AAS
>>902
そのコードをpythonから読み込んでいますか?
904: (ワッチョイ 86bb-hSjh) 2022/11/20(日)04:33 ID:ehdgoKhb0(1) AAS
>>902
SyntaxErrorなんで構文に間違いがあるんだけど、ここじゃ正確なコードが貼り付けられないから、自力解決を目指すか、外部サービスを利用してコードを晒すかしてください
905: (ワッチョイ 4b02-kiOm) 2022/11/20(日)06:11 ID:ZkE4F4/w0(1/2) AAS
>>902
ファイルパスの¥を2個つけないとエスケープ文字になるんじゃ
906: (ワッチョイ 4e66-QT9j) 2022/11/20(日)09:38 ID:f5Y3Vp3X0(1) AAS
Cドライブのルートなんかに置くなよ
907
(1): (ワッチョイ 6290-kfYZ) 2022/11/20(日)12:40 ID:zjEDBX2J0(1) AAS
うろ覚えで関数名だけわかってるような状態で
関数の使い方がよくわからなくなることがある
たまにドットが前に来るやつあるじゃん

kansu(引数)
.kansu(引数)
aaa.kansu()

モジュールがどうとかいう話なんだろうけど
こういうのみんなどうやって覚えてるの?
908: (ワッチョイ 4e66-QT9j) 2022/11/20(日)12:46 ID:+Dw5cfeT0(1) AAS
組み込み関数は全部覚える
そこに無ければオブジェクトのメソッド
.sort()とsorted()みたいに両方にあったりもする
909: (ワッチョイ 8286-Gbp4) 2022/11/20(日)13:01 ID:7a4yJys50(1) AAS
IDEを頼るのです
ここかここがええんかと関数名をちょっとタイプしてみてああんそこはダメぇ(OKという意味)と出たシグネチャを使えばよい
1-
あと 93 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.052s