1 名前:デフォルトの名無しさん mailto:sageteoff [2016/10/12(水) 13:34:49.56 ID:CGbCriuU.net] このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。 騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。 次スレは >>985 辺りで 前スレ くだすれPython(超初心者用) その30 echo.2ch.net/test/read.cgi/tech/1466569767/ 関連スレ Pythonのお勉強 Part51 echo.2ch.net/test/read.cgi/tech/1443700103/ ◆関連リンク Python の Home Page ttp://www.python.org/ ◆長いコードはこういうところにはってください ttp://ideone.com/ ttp://codepad.org/ ttp://pastebin.com/ ttp://dpaste.com/ https://try.jupyter.org/ ◆まとめwiki ttp://python.rdy.jp/
321 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 15:26:54.00 ID:miyqCymn.net] >reshapeでもいいけど 良くないね
322 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 20:41:42.34 ID:kjJf+w4Q.net] pdb のコマンドで変数を表示できますか?aで引数を表示するように
323 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 20:43:15.33 ID:ckhnbYpT.net] ぱいそぉぉぉぉおおおおおおおーーん
324 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 22:10:34.01 ID:fV6VYX+7.net] 先日始めたばかりのプログラミング初心者です。 python学習サイトで入門編を終え、いざ実際に色々といじってみようと 公式?のpythonドキュメントチュートリアルを見たのですが どうにも書かれていることがやりたい事と噛み合わない感じがします。 いまいちサイトの使い方が分からず、翻訳口調なのも気になるのですが 勉強して慣れれば普通に理解できるものなのでしょうか。
325 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 22:45:05.25 ID:ckhnbYpT.net] そうだと思うよ プログラミング言語なんてそんなもん 言っちゃ悪いが誰でもできる
326 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 06:58:23.21 ID:5ieSClDh.net] >>321 python.jpは良くないのは確か 英語判るひとならpython.orgの方を強く薦める
327 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 17:52:55.19 ID:zlxXdLUF.net] tkinter で widget が w のとき w.bind('<Destroy>', mydestroy) とかするとフック出来るのは分かったのですが 元々あった Destroy の呼び方がわかりません olddestroy = w.bind('<Destroy>') とやっても olddestroy = w.bind('<Destroy>', mydestroy) とやっても mydestroy() の中で olddestroy() して呼び出しできません w.bind() だけを見ると <hoge> の一覧のリストが返ってきます
328 名前:デフォルトの名無しさん mailto:sage [2016/11/15(火) 18:11:27.16 ID:bMz1J9Fg.net] Anacondaについて教えてほしいのですが、環境を構築する際にスレッド数上限を決めることってできないのでしょうか? 使用している計算機の契約上、CPUコア数を全て使用する場合の使用時間が限られています そこでマルチスレッドに対応したライブラリを使用した際に全てのコアを使用されないようコア数を絞りたいと思っています しかしライブラリごとに設定するのは設定漏れの心配があり、できればcondaが提供する環境の方で解決できたら嬉しいのですが・・・・そのようなことは可能なのでしょうか? もし可能であれば方法か参考になるページ等を教えてください よろしくお願いします
329 名前:デフォルトの名無しさん mailto:sage [2016/11/15(火) 18:47:01.59 ID:IxpYJQnb.net] multiprocessingモジュールにコア数を返すメソッドがあるから上書きする? linuxならulimit使うべきだと思うけど
330 名前:デフォルトの名無しさん mailto:sage [2016/11/15(火) 19:10:32.48 ID:J5KxXXfJ.net] start /affinity n
331 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 04:54:45.09 ID:ifar4qXf.net] python2.7のcvxoptパッケージで二次計画法を解く際にsolver.qpを使った時、 解がない時にエラーが出ますが、 解無しの時はNAまたは0などにすることで、 forループを中断させずに回すにはどうすればよいでしょうか?
332 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 05:26:55.71 ID:bpDg/mkv.net] 例外が起こるかもしれない計算をtry except文の中に書く 計算中の例外を捕捉したら解無しで使う値を代入するようにexcept節に書く
333 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 11:02:48.99 ID:Cf5MuJO6.net] pylintとpyflakesってどっちが定番なんですか?
334 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 12:08:47.92 ID:xWmKRoKA.net] 定番かどうか知らないけどダウンロード数が多い方はpypiで分かる
335 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 20:44:58.89 ID:ifar4qXf.net] >>329 ありがとうございます!
336 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 04:06:00.37 ID:Au/uI/3a.net] conda createで仮想環境作るのって conda/envs/以下のディレクトリにしか作れない?
337 名前:328 mailto:sage [2016/11/19(土) 05:25:04.18 ID:a2s2F7Cl.net] 先ほどの例外処理で、エラーではなく定義されていないTerminated (singular KKT matrix).という表示が出ていたので、try-exceptに適用させるために、これをエラーとして定義しようとしているのですが、 class MyError(exception): def __init__(self,error) self.error = error から どう書いて良いのかよくわからなくなっています 度々申し訳ありません
338 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 08:12:24.51 ID:8l8x6got.net] >>334 github見たら"Terminated ...."が表示される場合は値が返っているので例外で処理できない 返り値のdictの"status"が"unknown"かどうか調べればterminatedしたのか判定はできる
339 名前:328 mailto:sage [2016/11/19(土) 08:28:50.27 ID:a2s2F7Cl.net] >>335 unknownとなっていました このプログラム、ある数値範囲を分割してその各値をターゲットに2次計画法を用いており、おそらくGx<=hの制約によって範囲の端のところの解がなくterminated〜が出てしまってるのですが、この時の解の値を無視などすることはできませんか?
340 名前:328 mailto:sage [2016/11/19(土) 08:39:10.58 ID:a2s2F7Cl.net] 連投すみません このコードだとエラー出てますが、 sol=solver.qp(Q,p,G,h,A,b) if str(sol["status"])=="unknown" : sol["x"]=None sol["primal objective"] = None else: sol["x"]=sol["x"] sol["primal objective"] = sol["primal objective"] のようなイメージで良いのでしょうか
341 名前:328 mailto:sage [2016/11/19(土) 09:41:46.47 ID:a2s2F7Cl.net] あ、これでできました 喜びのあまり踊っております ありがとうございました
342 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 09:52:39.36 ID:8l8x6got.net] 後の計算で問題が起こらない値にしたほうがいいけどNoneで大丈夫かな? for文の中でsolver.qp()を呼び出しているなら continueすることでその場で周回を打ち切ってループを継続することができる for val in list: sol = solver.qp(val) if sol["status"] == "unknown": continue calcurate(sol)
343 名前:328 [2016/11/19(土) 10:50:38.22 ID:a2s2F7Cl.net] >>339 for i in xrange() Q = matrix p = matrix G = matrix h = matrix A = matrix b = matrix sol = solvers.qp(Q, p, G, h, A, b) if sol['status'] == 'optimal': sol['x'] = sol['x'] sol['primal objective'] = sol['primal objective'] else: sol['x'] = matrix(0行列) sol['primal objective'] = np.array([0], dtype = float) A[i] = np.dot(matrix, sol['x']) B[i] = np.array(sol['primal objective'] これで回しましたが,後の方の数値も回ってくれました. continueという方法もあるのですね 除外値0は視認できる量なのでこれでも大丈夫そうです ありがとうございます!
344 名前:328 [2016/11/19(土) 10:51:51.97 ID:a2s2F7Cl.net] 長コード失礼しました.
345 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 13:43:10.79 ID:YtkNE2sc.net] Q, p, G, h, A, b = matrix * 5
346 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 13:43:48.86 ID:YtkNE2sc.net] こ
347 名前:チちだ Q, p, G, h, A, b = (matrix,) * 5 [] [ここ壊れてます]
348 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 13:45:28.38 ID:YtkNE2sc.net] 5じゃなかった 6ね
349 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 13:53:31.34 ID:L3TamDez.net] 何その変数名
350 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 19:12:13.07 ID:EARt8M3E.net] 株価を取得するプログラムを作成したかったので 以下のページを参考に drillan.github.io/python/get_stock_price_from_rakuten_rss.html 以下のプログラムを作成してみたのでですが # coding: utf-8 from dde_client import DDEClient dde = DDEClient('RSS', 'N225.3125.T') print dde.request(u'現在値') 以下のエラーが発生してしまいました 解決方法わかる方教えてください Traceback (most recent call last): File "I:\project\trade\test\test.py", line 5, in <module> print dde.request(u'迴セ蝨ィ蛟、') File "I:\project\trade\test\dde_client.py", line 190, in request raise DDEError("Unable to request item", self._idInst) dde_client.DDEError: Unable to request item (err=0x4009L)
351 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 19:32:28.71 ID:evoiElz2.net] 中で呼び出されてる DdeClientTransactionがDMLERR_NOTPROCESSEDを返して失敗しているらしいけど よく分かんない
352 名前:デフォルトの名無しさん [2016/11/19(土) 20:34:11.21 ID:67PJcS6R.net] python3でddeのprintを直してやったけどできた 詳しくないので知りませんが先物口座開設してないか現在値が文字化けしてるのでは
353 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 21:19:20.34 ID:8l8x6got.net] >>346 マジックコメントだとutf-8になってるけど実際のエンコーディングはshift_jisだね マジックコメントをshift_jisに修正するかファイルをutf-8で保存しなおせば直ると思う >>> "現在値".encode('utf-8').decode('shift_jis') '迴セ蝨ィ蛟、'
354 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 22:43:03.79 ID:EARt8M3E.net] ありがとうございました。 ファイルをutf8で保存し直したらいけました
355 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:03:27.43 ID:Fci+Uzj5.net] 以下のような値が変数に格納されているんですが b' 82.00' 以下のように変換するにはどうしたら良いでしょうか? '82.00'
356 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:20:43.63 ID:7VADWQB7.net] strip ()
357 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:24:27.58 ID:Fci+Uzj5.net] >>352 ありがとうございます。 ただそれだけだとprintで以下のように出力されてしまうようです b'82.00' 以下のように数値の文字列として出力するにはどうしたら良いでしょうか? '82.00'
358 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:28:17.32 ID:mZUlhc5f.net] str(b'82.00', encoding='utf_8').strip()
359 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:28:31.29 ID:w0YTyg1d.net] bytesからstrへ変換するにはdecodeメソッドを使う 出力するときにクオートしてほしいならrepr()をかます >>> print(repr(b' 80.20'.strip().decode('utf-8'))) '80.20'
360 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:29:51.65 ID:Fci+Uzj5.net] いけました! ありがとうございます!
361 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:33:48.41 ID:w0YTyg1d.net] この短いコードで差が出るのでstr()を使う方はおすすめしない >>> import timeit >>> timeit.timeit("b'80.20'.decode('utf-8')") 0.3648384090001855 >>> timeit.timeit("str(b'80.20', encoding='utf-8')") 1.4309005750001234
362 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:38:30.61 ID:4jFeo3q7.net] なにこれ意味わかんないんだけど
363 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:51:25.17 ID:UTIcInIC.net] バイトオブジェクトが返ってクルんですね しかもエクセル用だからshiftJISでエンコされてるのか
364 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 22:22:40.65 ID:Fci+Uzj5.net] ありがとうございます!
365 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 23:36:17.30 ID:4jFeo3q7.net] いいってことよ
366 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 03:08:46.86 ID:/PeITn5d.net] 何時から何時までの時間帯に1分おきに繰り返す処理を作成したいのですが どうやったら作成出来ますでしょうか? windows環境なのでタスクスケジューラを使用しても構いません どなたかわかる方いたら教えていただけますでしょうか?
367 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 03:22:16.04 ID:ixmL4fJG.net] タスクスケジューラを使用して1分おきに起動 何時から何時までの時間帯なら実行 それ以外なら実行せずに即終了
368 名前:デフォルトの名無しさん [2016/11/21(月) 13:54:26.03 ID:OdlAvAwn.net] Pythonには、Timer, Alarm みたいなクラスは無いの?
369 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 14:15:36.63 ID:goLgdzFN.net] tkinter使えば?
370 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 18:14:09.98 ID:n75jjiYq.net] sys.pathに登録されているパスなのにimportできないのってどんな理由ですか? 例えばipythonをインストールして site-packages/IPython/extensions/rmagic.pyをimportしたいのに ImportError: No module named 'rmagic' ってなります
371 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 19:55:20.67 ID:ixmL4fJG.net] 別にmagicというディレクトリがあって その中に__init__.pyがないとか
372 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 22:11:13.94 ID:kGORnGd2.net] Matplotlib以外でグラフ描画ライブラリで良いのありませんか?
373 名前:デフォルトの名無しさん [2016/11/22(火) 01:07:55.83 ID:qW+6ZAFd.net] Gadfly
374 名前:デフォルトの名無しさん mailto:sage [2016/11/22(火) 01:55:19.53 ID:z3XwzLFJ.net] Anacondaに関する質問てここでいいすかね?
375 名前:デフォルトの名無しさん mailto:sage [2016/11/22(火) 03:00:09.76 ID:rIBekWb8.net] >>368 あるかbokeh
376 名前:デフォルトの名無しさん mailto:sage [2016/11/22(火) 13:02:19.65 ID:qW+6ZAFd.net] >>368 excelとかOOoとかGoogleAppsとか
377 名前:デフォルトの名無しさん mailto:sage [2016/11/22(火) 13:37:23.42 ID:Pvp5yOqg.net] ttp://qiita.com/damyarou/items/2de72bd8e2289cc2a9e0
378 名前:デフォルトの名無しさん [2016/11/22(火) 22:48:55.77 ID:HEsjvHAJ.net] 以下のような連想配列があるときobject4を(object3の後ろに)追加したいのですが どうすれば出来ますでしょうか? {'a':[object1,object2,object3]}
379 名前:デフォルトの名無しさん mailto:sage [2016/11/22(火) 23:02:46.61 ID:qW+6ZAFd.net] d = {'a':[object1,object2,object3]} d['a'].append(object4)
380 名前:デフォルトの名無しさん mailto:sage [2016/11/22(火) 23:03:14.61 ID:DEtO7tOO.net] その連想配列(辞書)をdicとすると、 dic["a"].append(obj4) で出来るのでは?
381 名前:デフォルトの名無しさん [2016/11/23(水) 01:03:12.49 ID:bgveU3t+.net] ありがとうございました。解決しました!
382 名前:デフォルトの名無しさん [2016/11/23(水) 01:03:47.77 ID:bgveU3t+.net] 以下の文字列を日本語の文字列に変換したいんですが どうしたら良いでしょうか? b'\x82x\x82s\x82k'
383 名前:デフォルトの名無しさん [2016/11/23(水) 01:52:50.37 ID:bgveU3t+.net] すいません自己解決しました .decode('shift-jis')でいけました
384 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 14:48:04.56 ID:0NcL6L2O.net] 今チュートリアル読んでます これからも意味の分からないことが出てくるんだろうと思うけど 変な質問はコレっきりにしますからモヤモヤするんで教えて下さい python3.5.2「4.7.2. キーワード引数」の例で出来上がる文章、 This parrot wouldn't voom if you put 1000 volts through it. Lovely plumage, the Norwegian Blue It's a stiff ! ってどういう意味(状況)なんですか? オウムに1000ボルトの電気ショック? 素敵な羽、ノルウェイブルー(色?) 死んでる? ゴワゴワ? 雷に打たれて黒焦げアフロになる、というようなマンガ的お約束か何かなんでしょうか???
385 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 15:18:50.49 ID:ANw4+JWL.net] 11 + 45 * 1 - 4 という式中の数字のみを arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]に含まれる数で順に置き換えて 1 + 2 * 3 - 4 としたいんだけどどうすればいい?正規表現とか使ってどうにかなる?
386 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 15:19:24.86 ID:0NcL6L2O.net] すいません、自己解決しました>>380 モンティパイソンの話が元ネタだったんですね
387 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 16:21:09.89 ID:qSuX5VVD.net] >>381 順に置き換えの定義があいまい。 1+2*3-4の次は2+3*4-5、3+4*5-6...って事?
388 名前:デフォルトの名無しさん [2016/11/25(金) 16:37:43.07 ID:gsd/4sgT.net] >>381 https://ideone.com/r7EkMX
389 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 18:26:46.48 ID:6I1tAUNu.net] s = "11 + 45 * 1 - 4" re.sub(r"\d+", "{}", s).format(*arr)
390 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 22:55:38.47 ID:1HRs1hBa.net] >>384 ruby?一応同じような感じでできました >>385 置換されないです...
391 名前:386 [2016/11/25(金) 22:59:06.17 ID:1HRs1hBa.net] konnna kanjini narimasita editor no mojiha musisitekudasai ofutaritomo arigatougozaimasita 1 import re$ 2 $ 3 i = 0$ 4 j = 0$ 5 arr = [
392 名前:デフォルトの名無しさん [2016/11/25(金) 23:00:01.15 ID:1HRs1hBa.net] 1 import re$ 2 $ 3 i = 0$ 4 j = 0$ 5 arr = ["1", "2", "3", "4", "5"]$ 6 s = "11 + 45 + 1 - 4"$ 7 tmp = []$ 8 tmp = s.split(" ")$ 9 print tmp$ 10 $ 11 while i < len(arr):$ 12 if tmp[i].isdigit():$ 13 tmp[i] = re.sub(r'\d+', arr[j], tmp[i])$ 14 j += 1$ 15 i += 1$ 16 $ 17 print tmp$ 18 s = ' '.join(tmp)$ 19 print s$
393 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 23:37:14.66 ID:6I1tAUNu.net] >>386 https://ideone.com/UhGVW2
394 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 11:31:17.41 ID:4XPhmo+0.net] matplotlibの質問です https://www.gsi.go.jp/kiban/ ここから FG-GML-5235-36-98-DEM5A-20161001.xml このデータをとってきて等高線を描くと 充血したおいなりさんωが現れます -9999の扱いはどう処理すればいいのでしょうか?
395 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 12:15:11.40 ID:ooyaFqF3.net] それはわたしのおいなりさん
396 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 14:21:08.43 ID:R/COkx/k.net] 入力した日付が実行日以前直近6日のみ取得したいのですが、 日付入力を間違った場合(存在しない日付)を入力した場合エラーで落ちます。 存在しない日付はエラーメッセージのみ表示してその後の処理も続けるにはどうすれば良いですか? import datetime day = datetime.date.today() - 6 a = [ ['2016', '11', '06'], ['2016', '11, '31'], ]; for b in a: if #日付が存在しないかを判定# print("日付がおかしいです。 ") print(b) input_day = datetime.date(int(b[0]), int(b[1]), int(b[2])) if day < input_day: print(b)
397 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 14:50:32.38 ID:mx1WdaLu.net] >>387-388 2chのバグだろう 書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。 " の代わりに、\" とエスケープすれば、どうだろう? それか、書き込み確認画面が出たら、1度キャンセルすれば、確認画面は出ないようになった
398 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 14:55:48.86 ID:vsxFJewY.net] >>392 ideone.com/97mZRU 日付の足し引きはtimedelta、例外処理はtry except、範囲内の判定には10 < x < 20みたいな書き方
399 名前:392 mailto:sage [2016/11/26(土) 14:57:27.54 ID:R/COkx/k.net] すみません、コード間違えていましたので再投稿します。 入力した日付が実行日以前直近6日のみ取得したいのですが、 日付入力を間違った場合(存在しない日付)を入力した場合エラーで落ちます。 存在しない日付はエラーメッセージのみ表示してその後の処理も続けるにはどうすれば良いですか? import datetime today = datetime.date.today() today_minus6 = today + datetime.timedelta(days=-6) a = [ ['2016', '11', '06'], ['2016', '11, '31'], ]; for b in a: if #日付が存在しないかを判定# print("日付がおかしいです。 ") print(b) input_day = datetime.date(int(b[0]), int(b[1]), int(b[2])) if today_minus6 < input_day: print(b)
400 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 15:12:58.86 ID:iYDfetS2.net] >>394 に書かれてる通りtry exceptで判断すればいい for b in a: try: input_day = datetime.date(int(b[0]), int(b[1]), int(b[2])) except: print(
401 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 15:13:45.52 ID:iYDfetS2.net] for b in a: try: input_day = datetime.date(int(b[0]), int(b[1]), int(b[2])) except ValueError: print('日付がおかしいです。 ', b) continue if today_minus6 < input_day: print(b)
402 名前:392 mailto:sage [2016/11/26(土) 15:17:02.28 ID:vO6Y+RMb.net] >>394 try, exceptで行けました! try, exceptってdefとかの全体を補足するものと思ってたら、関数1つだけをくくったりできるんですね。 使い方が難しそうだと思って今まで使ってなかったけど今回ので使うきっかけができました。 ありがとうございます。 > try: > input_day = datetime.date(int(b[0]), int(b[1]), int(b[2])) > except: > print('日付おかしい')
403 名前:392 mailto:sage [2016/11/26(土) 15:19:49.04 ID:vO6Y+RMb.net] >>397 おお! サンプルまで詳しくありがとうございます。 except ValueError: が自分のと違いますね。 何も指定しないとすべてのエラーでスキップされるので、ValueErrorで限定して指定すると より安全になりそうですね。 そちらを利用させていただきます。 ありがとうございました。
404 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 12:05:49.64 ID:msYXnjQ5.net] >>390 B の方を使えば上手くいく
405 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 16:29:43.48 ID:eCM+06G4.net] 自作でパッケージを作ってpipでインストールしたんですけど project/setup.py project/project/hoge.py project/project/data.txt hoge.pyの中でこのdata.txtのパスが欲しいんですがこのパスはどうやって取得するんでしょうか? (中身じゃなくてパスだけ欲しい)
406 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 16:52:06.20 ID:msYXnjQ5.net] os.path.dirname(__file__)
407 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 16:59:32.60 ID:QbhBdwoJ.net] >>401 distutilsだと多分だめ、setuptoolsを使う MANIFEST.inかpackage_dataキーワードでdata.txtをバンドルして pkg_resources.resource_filename("project", "data.txt")でパスを取得する
408 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 18:19:09.54 ID:jLowX4tF.net] オレの環境だとpkg_resourcesの中にresource_filenameが出てこない
409 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 19:10:52.66 ID:QbhBdwoJ.net] システム環境に勝手に手を加えるのはちょっと怖いから virtualenvかvenvで隔離環境作って最新版入れ放題ヒャッハーしようぜ
410 名前:デフォルトの名無しさん [2016/11/29(火) 00:58:30.14 ID:asOo9j5T.net] 毎時0分になったら関数fを実行する処理を書く時どうやって実装します? time.sleep(1)をwhileで回して時刻調べるしかない?
411 名前:デフォルトの名無しさん [2016/11/29(火) 00:59:44.36 ID:bRZpPDaJ.net] cron
412 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 06:32:02.91 ID:glNciwx+.net] Rubyの外部コマンドなら、system()とか、バッククォートで囲むとか system('mkdir hoge') # => true `date` # => "2012年 9月 3日 月曜日 23時59分17秒 JST\n" cron など、OSのコマンドを調べて。 cronに登録するのが嫌なら、周期的にコールバックしてもらう関数に、処理を書くとか
413 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 11:21:29.90 ID:siwyj2pL.net] >>402 これだと簡単に出来ました >>403 project/setup.py project/project/__init__.py project/project/hoge.py project/project/data.txt なふうに__init__.pyがないとdata.txtもインストールされないことに気づきハマりましたがこれも便利でした
414 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 19:00:22.79 ID:3ZCU7F/e.net] docutilsでreStructuredTextをhtmlに変換したいんですけど import docutils.core s = """ hello ===== """ print(docutils.core.publish_parts(s, writer_name='html')['html_body']) これ実行しても <div class="document" id="id1"> <h1 class="title">こんにちは</h1> </div> って表示されます 余計なclassとか要素を付け足さずに<h1>hello</h1>とだけ変換して欲しいんですけど 何か必要な設定おしえてください もしくは代替ライブラリありませんか?
415 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 19:01:55.56 ID:3ZCU7F/e.net] 訂正↓ これ実行しても <div class="document" id="id1"> <h1 class="title">hello</h1> </div> って表示されます
416 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 19:46:15.50 ID:glNciwx+.net] Xpath のライブラリなどを使って、タグから属性を削除すれば?
417 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 22:23:30.60 ID:rYidf/CN.net] pythonも原則finalで変数にしたい時だけvar付けるみたいな仕様にしない? そっちの方がいくない?
418 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 23:53:06.16 ID:6NvmVSGH.net] webdriver、BeautifulSoupを使ってパラメータを与える場合は、URLに書く方法しかないのでしょうか? 例えばrequestsのように与えることはできるのでしょうか? #--------------------------- url = "www.python.org" # URLはパラメータ入れるものではないです。サンプルです。 #--------------------------- import os from selenium import webdriver from bs4 import BeautifulSoup driver = webdriver.PhantomJS(service_args=[], service_log_path=os.path.devnull) driver.get(url + "?key=value") →requestsのようにパラメータを渡す方法はある?? html = driver.page_source.encode('utf-8') soup = BeautifulSoup(html, "lxml")
419 名前:414 mailto:sage [2016/11/29(火) 23:55:21.84 ID:6NvmVSGH.net] >>414 の続きです。 #--------------------------- import requests p = { "key": "value" } requests.get(url, params=p)
420 名前:デフォルトの名無しさん [2016/11/30(水) 00:11:29.92 ID:sQvK4opq.net] オセロを作りたいのですが ideone.com/FH3SDw 初期値の真ん中4つをセットするとこの様なアウトプットになってしまいます。。。 どこがおかしいのでしょうか?
421 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 00:30:03.48 ID:rS+9w+V/.net] >416 field = [[0]*8]*8 とすると、一行目のリストのコピーが行数分作られるのでなく、 一行目のリストの参照が行数分作られる。 なので、どの行を変えても、変更が全ての行に反映されてしまう。 field=[[0]*8 for _ in range(8)] とすれば回避できる。