1 名前:デフォルトの名無しさん [2018/08/24(金) 07:50:35.97 ID:VD4/++xS.net] このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。 騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。 次スレは >>985 辺りで 前スレ くだすれPython(超初心者用) その38 https://mevius.5ch.net/test/read.cgi/tech/1526522954/
985 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 05:15:47.87 ID:0YIMqUF3.net] ユーザーに派生クラスを作ってもらうための、ひな形・マーカーメソッドかも。 派生クラスを作らなかった場合の、デフォルトの動作なのかも 例えば、Ruby で抽象(マーカー)メソッドを作れば、 もし派生クラスB で、メソッドa を再定義(override)しなければ、例外をraise するから、 ユーザーは派生クラスで、メソッドa を再定義しなければならない つまり、プログラマーに注意喚起する印・マーカー class A def a raise NotImplementedError, "未実装です" end end class B < A end B.new.a # 未実装です
986 名前:937 mailto:sage [2018/11/20(火) 05:21:34.81 ID:0YIMqUF3.net] ライブラリの作者は、様々な、decode の実装方法があるから、ひな形だけは作っておくので、 ユーザーは派生クラスで、具体的なdecode の処理を、再定義して使ってください もし再定義しなければ、何も処理しません
987 名前:デフォルトの名無しさん [2018/11/20(火) 10:53:50.60 ID:QMDiuUiOY] 実行すると、同じ値しか出てきません。 ランダムで出すにはどうしたらいいですか? また、ランダムで10回繰り返すとかできるんですか? よろしくおねがいします。 import random a = random.randrange(2,5,2) b = random.randrange(2,9,2) c = random.randrange(12,61,12) pm = ['+','-'] printpm = random.choice(pm) calc = printpm + str(a) + '(' + printpm +str(b) + '×' + printpm + str(c) + ')=' print(calc) print(calc)
988 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 09:32:49.23 ID:2X5h674N.net] >>940-941 ありがとうございました、そういう事だったのですね
989 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 12:30:52.12 ID:xneveUXp.net] >>943 いやそれ間違ってるから。 python2、python3両方で使えるようにそれぞれメソッドが定義してあって、 たまたまpython2のほうは演算する必要がないから引数をそのまま返しているだけ。 そいつはマ板で有名なpython知らないruby荒らしだから無視したほうがいいよ
990 名前:デフォルトの名無しさん [2018/11/20(火) 13:05:13.83 ID:ZtIBLsed.net] >>940 さすがRuby! 圧倒的ランクイン!! https://gigazine.net/news/20181116-top-programming-languages-2018/ https://www.softantenna.com/wp/software/the-state-of-the-octoverse-2018/ https://www.softantenna.com/wp/software/ieee-spectrum-top-programming-languages-2018/ https://findy-code.io/engineer-lab/github-programming-language-ranking https://i.imgur.com/0YbMsqj.jpg
991 名前:デフォルトの名無しさん [2018/11/20(火) 13:34:07.29 ID:jmuJusIM.net] https://docs.python.org/ja/3/library/exceptions.html#NotImplementedError https://docs.python.org/ja/3/library/constants.html
992 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 1
] [ここ壊れてます]
993 名前:6:39:53.72 ID:5NbKWroI.net mailto: >>936 しぇばん、importが済んだ後あたりに import sys reload(sys) sys.setdefaultencoding('utf-8') って書いてみて [] [ここ壊れてます]
994 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 19:08:18.20 ID:PIfvSzhu.net] ディレクトリ内に aaa_000.txt aaa_001.txt : aaa_100.txt てな感じでファイルが保存されてたとします。 aaa_000.txt以外をglob.glob()で一覧化して取り出したいんですが glob.globの引数に指定する正規表現、どうすればいけますでしょうか???
995 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 19:13:57.66 ID:5NbKWroI.net] !(^000$) じゃね?
996 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 19:15:38.40 ID:5NbKWroI.net] 禿しくまちがってた ^(?!000)$
997 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 19:52:04.79 ID:PIfvSzhu.net] import glob l = glob.glob(r"^(?!000)$") print(l) こうですか? なんかダメみたいです(´・ω・`) l = glob.glob(r"aaa_(?!000)$") l = glob.glob(r"*(?!000)$") も試してみましたがダメでした。
998 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 20:46:06.89 ID:eXMfunJO.net] 素直にre使ってりゃ1分で終わってたな
999 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 20:48:08.12 ID:d/DSkvWp.net] globは正規表現使えないぞ。 使えるのはワイルドカードだけ
1000 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 20:48:55.37 ID:5NbKWroI.net] んんんんn… l = glob.glob(r"aaa_(?!000)[0-9]*\.txt") でどうよ
1001 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 20:49:50.73 ID:5NbKWroI.net] >>953 mjd >>951 全部取り出してから そのリストから aaa_000.txtだけさくーじょするのが早い(´・ω・`)
1002 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 20:51:12.06 ID:+8Izpd7U.net] >>955 その方が後から見てわかりやすいしな
1003 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:05:36.49 ID:5mSMf66i.net] あああ、mjdって「マジで」かー
1004 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:13:03.42 ID:aqI13PjQ.net] いくらくだすれとはいえこんな頭のおかしい奴が回答者だとは…
1005 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:13:50.48 ID:5NbKWroI.net] 初心者の 初心者による 初心者のための 互助すれ
1006 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:15:21.06 ID:yKairBEQ.net] [x for x in glob.glob() if int("".join(re.findall("\d", x))) > 0] でいけるかな ファイル名が決め打ちで分かってるなら [x for x in glob.glob() if int(x.replace("aaa_","").replace(".txt","")) > 0] でもいける でも今日日os.scandir()とかあるのにglob使う必要性はないと思う
1007 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:15:59.61 ID:3m3Squu1.net] Pythonのtime sleepとcrontabのコードって相性悪くない?
1008 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:19:44.13 ID:5NbKWroI.net] 俺の環境(python2.7 Win7(XPからのアプデ))では time sleepは常にラグい (`・ω・´)キリッ
1009 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:22:17.92 ID:yKairBEQ.net] [x for x in glob.glob() if {y for y in x if y.isdigit() and y != "0"}] が一番スマート()か
1010 名前:デフォルトの名無しさん [2018/11/20(火) 21:36:20.21 ID:lC+kMZiu.net] glob.glob('aaa_*.txt').remove('aaa_000.txt')
1011 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 21:46:55.78 ID:PIfvSzhu.net] >>960 >>963 サンクス、コピペしたけど動かなかったので諦めました >でも今日日os.scandir()とかあるのにglob使う必要性はないと思う os.scandir ←これ知らんかたわw これでなんとかなりそうですw >>964 .-´ ``ヽ / ヽー `ヽ / ノ (O )ノ ̄ ̄`ヽ、―ニ / (●) __)⌒/ ´`ヽ _ 三,:三ー三,: | ::⌒(__ノ/ ノヽ--/ ̄ , ` ` ̄ ̄ ̄ 。ヽ 。 )( }. ...| /! ヽo (__ン }、ー‐し'ゝL _
1012 名前:人 ー jr--‐‐'´} ;ーー------ / ヾ---‐'ーr‐'"== | [] [ここ壊れてます]
1013 名前:デフォルトの名無しさん [2018/11/20(火) 22:15:47.35 ID:lC+kMZiu.net] >>964 何でダメなのかわからんかったけどremoveメソッドはNoneを返すんだな x = glob.glob('aaa_*.txt') x.remove('aaa_000.txt') >>965 ごめんね
1014 名前:デフォルトの名無しさん mailto:sage [2018/11/21(水) 01:45:07.75 ID:yscr9wE/.net] Ruby で、配列の差集合を使った ary = Dir.glob( 'aaa_*.txt' ) - [ 'aaa_000.txt' ]
1015 名前:デフォルトの名無しさん [2018/11/21(水) 02:04:45.67 ID:ILAAUKO6.net] Rubyが大人気!Rubyが大人気! 学ぶ価値がある大人気言語Ruby!! https://gigazine.net/news/20181116-top-programming-languages-2018/ https://www.softantenna.com/wp/software/the-state-of-the-octoverse-2018/ https://www.softantenna.com/wp/software/ieee-spectrum-top-programming-languages-2018/ https://findy-code.io/engineer-lab/github-programming-language-ranking https://i.imgur.com/0YbMsqj.jpg
1016 名前:デフォルトの名無しさん mailto:sage [2018/11/21(水) 18:00:19.78 ID:/haBP7x7.net] なぜpathlib使わないのか
1017 名前:デフォルトの名無しさん [2018/11/21(水) 18:42:34.45 ID:vOPCMSrj.net] bashからpythonのCGIプログラムを実行するときにGETパラメータを渡す方法を教えてください。
1018 名前:デフォルトの名無しさん mailto:sage [2018/11/21(水) 20:05:39.22 ID:NMvk2xsS.net] get1=get1_val get2=get2_val が渡したいとすると url="example.com/cgi-bin/recv.php?get1=get1_val&get2=get2_val" curl $url
1019 名前:デフォルトの名無しさん mailto:sage [2018/11/21(水) 20:07:16.16 ID:NMvk2xsS.net] example.com/cgi-bin/recv.php は pythonのcgiを置いて動かしてるアドレスに読み替えてくれ
1020 名前:デフォルトの名無しさん mailto:sage [2018/11/21(水) 20:07:21.27 ID:vOPCMSrj.net] デバックしたいです。
1021 名前:デフォルトの名無しさん mailto:sage [2018/11/21(水) 20:14:02.86 ID:NMvk2xsS.net] pythonのCGIン中のimportんところの最後に import cgitb cgitb.enable() と書け デバッグが終わったら消すのを忘れるな 忘れるとたいへんなことがおきる
1022 名前:デフォルトの名無しさん mailto:sage [2018/11/21(水) 20:16:30.77 ID:NMvk2xsS.net] >>971-972 あとで見返す人も居ないと思うがもうちょっとわかりやすく書いておこう get1としてget1_val get2としてget2_val が渡したい で Apacheなんかでlocalhostを動かしていて bash-cgiふぉるだんなかに ターゲットとなるhoge.cgiが置いてある とすると url="localhost/bash-cgi/hoge.cgi?get1=get1_val&get2=get2_val" curl $url
1023 名前:デフォルトの名無しさん [2018/11/21(水) 20:50:52.10 ID:jrFgFGaV.net] ‘/home/hoge/foo/*.txt’ みたいなパスが与えられてglobしたい時って、pathlibだと一度切り分けて Path(‘/home/hoge/foo’).glob(‘*.txt’) とするしか無い? glob.globなら最初のパスを丸ごと与えて終わるけど
1024 名前:デフォルトの名無しさん [2018/11/21(水) 21:06:34.58 ID:JM/nMfDs.net] pathlib使わんくてもええんやで?なにに追い立てられとるんやおまえら?
1025 名前:デフォルトの名無しさん mailto:sage [2018/11/22(木) 00:08:45.16 ID:VnO3ZoaR.net] Ruby では、絶対・相対パスの両方が使えるよ Dir.glob( 'C:/Users/Owner/Documents/*.txt' )
1026 名前:デフォルトの名無しさん mailto:sage [2018/11/22(木) 08:08:40.14 ID:MlwCwGep.net] >>978 荒らし氏ね
1027 名前:デフォルトの名無しさん [2018/11/22(木) 08:55:38.42 ID:GbIN7rVe.net] >>978 そんな基本的なことで自慢しなけりゃならないとはよっぽどショボい言語なんだなww >>968 という状況に追い込まれるのも当然な気がするwww
1028 名前:デフォルトの名無しさん mailto:sage [2018/11/22(木) 09:44:14.26 ID:5DqVDDdG.net] ガイジしか使ってないし 開発者もガイジ揃いだから
1029 名前:デフォルトの名無しさん mailto:sage [2018/11/22(木) 11:17:29.92 ID:yaFldicH.net] Rubyはガイジ隔離言語として世の役に立ってるよなw
1030 名前:デフォルトの名無しさん mailto:sage [2018/11/22(木) 12:06:33.50 ID:kIWLxEQb.net] (Rubyガイジ)うんこ…うんこ…
1031 名前:デフォルトの名無しさん [2018/11/22(木) 13:34:33.95 ID:blyr971h.net] 次スレよろ
1032 名前:デフォルトの名無しさん mailto:age [2018/11/22(木) 17:10:16.21 ID:JDIt5Mgb.net] ( ・∀・)ノフォラァヨ!!---===≡≡≡ くだすれPython(超初心者用) その40 mevius.5ch.net/test/read.cgi/tech/1542874174/
1033 名前:デフォルトの名無しさん mailto:sage [2018/11/23(金) 16:02:50.08 ID:joE0voDR.net] rate="486,380(26.03%)" みたいなのから正規表現で26.03だけ
1034 名前:取り出したいんですけどどうすればいいですか? 最初はrate[-7:-2]で取り出そうと思ったんですけど、たまに"500(3.27%)みたいな%が一桁のデータがあって、出力すると(3.27になり、エラーの原因になってしまうんです つまり()の中の数字だけ取り出す方法を教えてください [] [ここ壊れてます]
1035 名前:デフォルトの名無しさん [2018/11/23(金) 16:34:17.54 ID:e4GZHgy/.net] >>986 re.compile(r'\((.*)\%\)', re.I)
1036 名前:デフォルトの名無しさん mailto:sage [2018/11/23(金) 17:04:36.40 ID:joE0voDR.net] >>987 神がいた 最後のre.lがあるとなんかエラー起きたけどちょっと弄ったらできたわ ありがとうございます 正規表現は素人には難しい
1037 名前:デフォルトの名無しさん [2018/11/23(金) 17:08:26.06 ID:f04GZ1ux.net] >>986 '\d+\.\d+(?=\%)'
1038 名前:デフォルトの名無しさん mailto:sage [2018/11/23(金) 17:41:39.39 ID:joE0voDR.net] >>989 こっちでもできた しゅごい
1039 名前:デフォルトの名無しさん mailto:age [2018/11/23(金) 18:29:59.34 ID:cGOad0jL.net] >>990 かわいい 掘らせて ハアハア(´Д`*)
1040 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 03:48:05.11 ID:01jBobXF.net] Ruby で作った。 正規表現内で特別な意味をもつ、特殊文字を判別する rp = Regexp.escape "(%)" puts rp #=> \(%\) ( ) は特殊文字なので、それらから特別な意味を除いて、単なる文字として使うには、 前に、\(逆スラッシュ)を付けて、エスケープする rate = "486,380(26.03%)" md = rate.match /\((.*)%\)/ puts md[ 0 ] #=> (26.03%) puts md[ 1 ] #=> 26.03 外側の( ) は、単なる文字として使うので、\( \) とエスケープするが、 内側の( ) は、キャプチャーの意味なので、エスケープしない md[0]はマッチした文字列で、md[1]は、( )でキャプチャーした部分
1041 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 08:22:15.36 ID:sJe2ncgH.net] >>992 いい加減にしろよ屑
1042 名前:デフォルトの名無しさん [2018/11/24(土) 09:57:01.31 ID:hG+y0dS8.net] >>992 圧倒的大人気言語Ruby!! https://gigazine.net/news/20181116-top-programming-languages-2018/ https://www.softantenna.com/wp/software/the-state-of-the-octoverse-2018/ https://www.softantenna.com/wp/software/ieee-spectrum-top-programming-languages-2018/ https://findy-code.io/engineer-lab/github-programming-language-ranking https://i.imgur.com/0YbMsqj.jpg 大人気!!!
1043 名前:デフォルトの名無しさん [2018/11/24(土) 11:16:19.41 ID:ZWAqZgZk.net] >>994 記事読んでみたらRuby落ち目で草
1044 名前:デフォルトの名無しさん [2018/11/24(土) 12:12:32.95 ID:4kdGLnPd.net] re.search と re.findall どっち使うのが良いの? web で調べると re.search 使ってる人や薦める人が多いみたいだけど 実際は re.findall の方が使いやすいと感じる
1045 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 12:22:51.14 ID:rqBWhuzZ.net] お前が使いやすいと思うものを使え お前の感性なんざ知らねえよ
1046 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 12:25:19.78 ID:rqBWhuzZ.net] だいたいre.searchを薦めてる奴はその理由を書いてるだろ (書いてない奴はゴミだから信用するな) それを理解した上でre.findallの方がというなら、もはや否定する理由はない お前の中ではそうなんだな、で終わりだ
1047 名前:デフォルトの名無しさん [2018/11/24(土) 13:07:33.24 ID:b4dZse+n.net] >>998 だったら最初から黙っとけよ、チンカス
1048 名前:デフォルトの名無しさん [2018/11/24(土) 13:11:24.69 ID:4kdGLnPd.net] finditer が良さそうなのでこれにします 本当にありがとうございました 仲良くしてね
1049 名前:デフォルトの名無しさん mailto:sage [2018/11/24(土) 14:00:15.36 ID:f9pHxWoA.net] 一個見つかれば良い状況で searchではなくfinditer使うのは面倒くさいだけのような finditerはマッチしてもしなくてもイテレータが帰ってきちゃう
1050 名前:デフォルトの名無しさん mailto:age [2018/11/24(土) 14:17:31.53 ID:S/+07wK4.net] じつにくだすれらしい くだくだなながれですね (´・ω・`)
1051 名前:デフォルトの名無しさん [2018/11/24(土) 14:24:37.27 ID:4kdGLnPd.net] 何個見つかるか事前に判らないので match したかしなかったか調べるのに if m is None: みたいな書き方するなら for _ in iter: でする方が楽なんです 条件後付けと言われればその通りですが
1052 名前:デフォルトの名無しさん [2018/11/24(土) 14:25:34.56 ID:4kdGLnPd.net] ume
1053 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 92日 6時間 34分 59秒
1054 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています