1 名前:デフォルトの名無しさん [2019/07/24(水) 21:02:48.30 ID:d1IM+Tl+.net] 当スレに★Python以外のプログラミング言語での回答類を書くべからず★ ☆「Ruby では」「Rubyでは」をNGワード登録推奨 このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 ★Pythonのソースコードはそのまま5ちゃんにコピペするとインデントが崩れるので ↓等のてきとうなソースコード用うpろだに貼ってきてください。 ttp://ideone.com/ デフォ設定はC用のため言語選択ボタン押下がピコ手間かも。 ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。 ttps://jupyter.org/try (旧try.jupyter.org)ちょっとめんどうそう ◆エラーを解決したい場合は、表示されてるエラー全文(勝手に省略禁止)と 実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。 ◇Python公式サイト◇ www.python.org/ ◇まとめwiki◇ ttp://python.rdy.jp/ 〇前スレ〇 くだすれPython(超初心者用) その43【Ruby禁止】 mevius.5ch.net/test/read.cgi/tech/1555397061/
49 名前:デフォルトの名無しさん [2019/07/29(月) 17:54:34.63 ID:uV6fxwjn.net] 質問です。 (a+1 b+1)をループ処理しながら同じ文章にするためにはどうしたらいいのでしょうか?? 別々で計算は出来るのですが、改行なしの同じ文章することが出来ません。
50 名前:デフォルトの名無しさん [2019/07/29(月) 17:55:52.21 ID:uV6fxwjn.net] >>46 hogeはまだ会得していませんが、endは再確認出来ました。
51 名前:デフォルトの名無しさん [2019/07/29(月) 17:56:52.08 ID:uV6fxwjn.net] >>48 >>47 もう少し調べてみます。
52 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 17:57:39.49 ID:qPlWvr7i.net] 意図するところが全く分からないので期待する出力を示せ 話はそれからだ
53 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 17:58:36.22 ID:MFjRjSYE.net] >>49 もう一度>>46 をよめ 授業は真面目に受けろ
54 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 18:06:29.03 ID:c9RUmAdY.net] 初心者スレなのは分かるけどびっくりするほど授業のレベル低いな
55 名前:デフォルトの名無しさん [2019/07/29(月) 18:22:22.24 ID:uV6fxwjn.net] >>52 西暦a年は昭和b年です という出力がしたいです。 aとbは標準入力から得ます。 10年分の出力がしたいです。
56 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 18:26:31.55 ID:MFjRjSYE.net] >>54 質問者の理解力が・・・
57 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 18:52:20.77 ID:MFjRjSYE.net] 以下の指摘についてレスを書く前に まず>>37 を理解し、マスターしろ >>55 はしょるな 全文のせろ
58 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 19:00:25.05 ID:VkmvAKd6.net] 両方与えてくれるなんて親切だな ideone.com/QyqbqN
59 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 19:13:21.46 ID:MFjRjSYE.net] >>58 を改造して提出したら チートしたのがばればれw
60 名前:デフォルトの名無しさん [2019/07/29(月) 19:22:03.54 ID:YN9DtyGp.net] >>57 >>37 さんを真似て書いてみましたがエラーで出力されません。
61 名前:デフォルトの名無しさん [2019/07/29(月) 19:24:05.79 ID:YN9DtyGp.net] 問題です。 標準入力から、1行目に西暦年、2行目に年数が与えられます。この西暦年から始まる、年数分の「西暦年と昭和年の対応表」を出力するプログラムを作成してください。 対応表は、「西暦XXXX年は昭和YY年です」と表示します。昭和年は、西暦1926年から西暦1988年までの期間で、「西暦年 - 1925」で求めることができます。 なお。与えられる西暦年は、昭和年に対応しています。年数も、昭和年を超えることはありません。 1975 10 よろしくお願いします。
62 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 19:37:31.30 ID:SYaK4Xam.net] いやです
63 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 19:39:24.73 ID:UVc52Nf7.net] まず自分で作ったうまく動かない無様なコードを晒してみんなの笑いものになってからだ。
64 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 19:41:53.51 ID:ZTT4wz19.net] 一体何のためにプログラミングを学んでいるのか理解に苦しむな y = int(input()) n = int(input()) print([ for i in n])
65 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 19:52:50.59 ID:kz87hKYA.net] 漢字が読める以外は小学生に劣ってると思う
66 名前:デフォルトの名無しさん [2019/07/29(月) 20:05:27.88 ID:YN9DtyGp.net] みなさんはどうやって上達していったのですか?
67 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 20:19:49.28 ID:Y1SytvIs.net] 言語仕様をよく読んだ
68 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 20:44:14.10 ID:VkmvAKd6.net] 少しずつやれること増やしていくんだよ ここにはそのために役立つコードいつくか集まっているのだから さっさと実行して身に着けてしまいな
69 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 20:52:20.17 ID:xotx5r18.net] 上から目線でエラそうなこと言ってるけど実は全員初心者だから気にするな
70 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 21:02:07.59 ID:p0Z3/9yx.net] 適当に人気のある入門書買って勉強すればある程度はいけると思うけど
71 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 21:04:09.38 ID:MFjRjSYE.net] >>61 >>64 がヒントあげてくれているので それと37のヒントを 参考にしてつくったコード(たぶんエラーがでて、望んだようには出力されないだろうがおそれるな)を ttp://codepad.org/ にでもうpって ここにそのcodepadアドレスを貼れ >>66 C言語の超入門の授業(半期のみ、週1コマ)を真面目に受けて、以降は独学
72 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 21:11:44.33 ID:MFjRjSYE.net] >>61 追記 >>58 氏がおまいのレベルからすると明らかにズルしてるのがバレバレバレレベルの回答を貼ってくれてるので それもよめ
73 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 21:37:28.04 ID:CSar0obt.net] https://i.imgur.com/WocYu5X.jpg
74 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 23:03:53.12 ID:LpaqQy0x.net] Ruby で作った nums = <<"EOT".lines( chomp: true ).map( &:to_i ) # 数字の配列。改行は削除 1975 10 EOT #=> [1975, 10] nums[ 1 ].times do |idx| # 10回ループ puts "西暦#{ nums[ 0 ] + idx }年は昭和#{ nums[ 0 ] + idx - 1925 }年です" end 出力 西暦1975年は昭和50年です 西暦1976年は昭和51年です 〜 西暦1984年は昭和59年です
75 名前:デフォルトの名無しさん mailto:sage [2019/07/29(月) 23:05:50.23 ID:S/NmWbT9.net] 100GB近くあるテキストファイルを50万行ずつに分割する処理の途中で 誤って処理を止めてしまったのですが、途中(仮に500)からイテレータを始める方法を検討いただきたいです。 ファイルの読み込みはpandasのread_tableでchunksizeを50万で指定しています。 skiprowsを50×10万行で指定したらmemory errorを起こしました。 読み込みだけで一回10秒程度かかるため、dataframeを作成せずにイテレータをインクリメントしたいです。
76 名前:デフォルトの名無しさん mailto:sage [2019/07/30(火) 01:09:29.96 ID:kWhTMvh9.net] 仮にn行目まで処理したかわかってるならdf[n:]でいいんじゃない エラー吐くなら知らん 何なら最初からやり直したらいいと思う
77 名前:デフォルトの名無しさん mailto:sage [2019/07/30(火) 04:13:05.77 ID:RYwsY7rK.net] 一行ずつ読んでいって num_of_line += 1 if num_of_line > 500: do_something のようなパーツ挟む
78 名前:デフォルトの名無しさん mailto:sage [2019/07/30(火) 09:43:12.55 ID:VGSDgyJc.net] UWSC→AutoIT→Pythonで簡単に移行できたからUWSCから覚えてみては! PythonもKivyのGUIから入ったからprintのendオプションとか昨日まで知らなかったわ
79 名前:デフォルトの名無しさん mailto:sage [2019/07/30(火) 10:18:32.63 ID:RYwsY7rK.net] どうしても Windows でキーマクロしたい時の最終手段がUWSCというイメージ https://i.imgur.com/9syf7Ak.jpg キー入力付近で書くことで抽象化があまりできず ネストも深まりやすい感じが伺える python で済むならpythonで終わらせて キーマクロ言語は触らないほうが良いと思います (vim のキーマクロを書くことがあるが、 同様の理由で異常に読みにくい)
80 名前:デフォルトの名無しさん mailto:sage [2019/07/30(火) 14:44:50.19 ID:h68cBa5O.net] https://ideone.com/sGrrsH
81 名前:デフォルトの名無しさん [2019/07/30(火) 23:38:26.25 ID:0mrV0sDP.net] >>55 要するに、10回西暦と年号の入力と出力を繰り返したいのか。 しかも西暦から年号の変換をプログラムでしないで手計算とかintにする必要も無い。 forの変数も問題からすると使わない。 (問題自体が学習者を混乱させるクソ問題) ヒントは以下2つ ヒント1 for i in range(10): ヒント2 a = input() print(“西暦” + a + “年“) intじゃなきゃダメとか意味不明な事言って来たら、intにするなら西暦だけ入力にして年号は計算で出せやと文句垂れつつヒント2を以下に変更。 a = int(input()) print (“西暦”, a, “年“) あくまでヒントだから、元にして自分で問題解いてね。
82 名前:デフォルトの名無しさん mailto:sage [2019/07/30(火) 23:52:21.46 ID:4WmgeffG.net] >>81 長文書く前に後のレス(>>61 以降)にも目を通しておこうな。
83 名前:デフォルトの名無しさん [2019/07/30(火) 23:53:01.50 ID:0mrV0sDP.net] >>61 あ、勘違い。 最初の西暦と、そこから何年分を出力するかの年数を入力して、年号は計算して出すのか。 んじゃあ a = int(input()) #西暦 b = int(input()) #年数 for i in range(b): print(“西暦”, a + i, “年”) みたいな感じでおk。
84 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 09:16:41.95 ID:hRCYkJOA.net] 初心者レベル2くらいかな
85 名前:デフォルトの名無しさん [2019/07/31(水) 12:22:56.68 ID:tr6QRH6+.net] 授業でforの使い方をどの程度教えているかにも寄るからね。 for i in range(a,b):の形まで教えているなら >>83 のforは for i in range(a,a + b): になるので年号計算の式を短く出来るけど、 その形を教えてないとxとか言われそうだしねぇ。。。
86 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 17:22:28.03 ID:GkrfM7ax.net] https://i.imgur.com/gJaLQYY.jpg 赤い数字が要素で黒文字は接点の番号です。 それぞれの要素に含まれる接点を自動で求めるコードを作っているのですが、なかなかできません。 結果が配列で出てくるようにしたいのですが、どうすればできるのでしょうか。 要素番号,接点番号1,接点番号2,接点番号3 1,1,4,5 2,1,2,5 3,2,5,6 のように作りたいです。 For文を要素の個数だけ回して、そこからができません。 お願いします。
87 名前:デフォルトの名無しさん [2019/07/31(水) 17:27:06.69 ID:+MN2Xkdt.net] 等差数列やろ
88 名前:デフォルトの名無しさん [2019/07/31(水) 17:52:19.54 ID:/rYCzabe.net] >>> [(lambda n, x: (n, (x, x+3-6*((n-1)%2), x+4-8*((n-1)%2))))( n, ((n - 1) // 2) + 4 * ((n - 1) % 2) + (n > 4) + 1) for n in range(1,9)] [(1, (1, 4, 5)), (2, (5, 2, 1)), (3, (2, 5, 6)), (4, (6, 3, 2)), (5, (4, 7, 8)), (6, (8, 5, 4)), (7, (5, 8, 9)), (8, (9, 6, 5))]
89 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 17:53:23.94 ID:GkrfM7ax.net] 座標を使えば上手くできる気もするのですが、上手くコードにできません。
90 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 17:58:51.92 ID:vtX/RSGM.net] ttp://ideone.com/ub4KPl たかがこの程度の問題でここまでするのもどうかと思うが
91 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 18:07:45.96 ID:GkrfM7ax.net] ありがとうございました。 教えて頂いた式の意味をしっかりと理解します。
92 名前:デフォルトの名無しさん [2019/07/31(水) 18:13:33.90 ID:3lzQcoQt.net] >>86 こういうお話を一般化するとドロネー分割というのがあるから調べてみると幸せになれるかも知れない
93 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 18:53:04.66 ID:6BPSvdm1.net] 「ポリゴン 分割 アルゴリズム」で検索すれば?
94 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 19:32:49.68 ID:w173sz60.net] ideone.com/OkiPYj python よりも 問題の9割は数学的な難易度だ
95 名前:デフォルトの名無しさん [2019/07/31(水) 21:26:45.90 ID:GkrfM7ax.net] たびたび申し訳ございません。 2つのcsvファイルを組み合わせ、新たに配列を作るのはどうすればよいのでしょうか。 座標csv 番号, x, y 1, 0, 0 2, 0, 0.5 3, 0, 1 4, 0.5, 0 要素csv 要素番号, 接点1、節点2、節点3 1, 1, 4, 5 2, 1, 2, 5 3, 2, 5, 6 4, 2, 3, 6 の2つのリストから 要素番号、接点1の座標、接点2の座標、接点3の座標 1, (0,0) (0.5,0) (0.5,0.5) 2, (0,0) (0,0.5) (0.5,0.5) 3, (0,1) (0.5,0.5) (0.5,1) のようなリストを作成したいです。座標csvには接点の座標が入っており、 要素csvにはその要素に含まれる接点が含まれています。 そこで、要素csvの、要素番号に該当する座標を、座標csvから持ってきてリストを作りたいということです。 配列の扱いがイマイチ理解できません。 配列は1行しか扱えないのでしょうか? まとめてcsvを読み込んでも、最後の行しか表示されません。 教えてください。
96 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 22:11:21.16 ID:jouiHweD.net] >>95 >まとめてcsvを読み込んでも、最後の行しか表示されません そのソースコードうp うp先は>>1 から選ぶよろし
97 名前:デフォルトの名無しさん [2019/07/31(水) 22:24:12.22 ID:GkrfM7ax.net] https://ideone.com/UlbA6W とりあえず読み込めるようにはなりました。 ここからができません。 具体的に何をすればよいのかがわかりません。
98 名前:デフォルトの名無しさん mailto:sage [2019/07/31(水) 23:44:43.90 ID:w173sz60.net] >>95 余計な要素である番号と要素番号消しちゃえ
99 名前:デフォルトの名無しさん [2019/08/01(木) 00:19:43.85 ID:Nlg/+iAg.net] 結果をどう持ちたいのか分らんけどこれでどう? import pandas as pd import pprint # element_path="要素.csv" # point_path="座標.csv" # element_pd = pd.read_csv(element_path, index_col=0, header=0) # point_pd = pd.read_csv(point_path, index_col=0, header=0) element_pd = pd.DataFrame({'x':[0,0,0,0.5], 'y':[0,0.5,1,0] }, index=[1,2,3,4]) point_pd = pd.DataFrame({'point_1':[1,1,2,2], 'point_2':[4,2,4,3], 'point_3':[4,4,4,4] }, index=[1,2,3,4]) element_dict = element_pd.to_dict(orient='index') pprint.pprint(element_dict) point_pd = point_pd.applymap(lambda d: '(' + str(element_dict[d]['x']) + ',' + str(element_dict[d]['y']) + ')') point_list = point_pd.values.tolist() pprint.pprint(point_list)
100 名前:デフォルトの名無しさん mailto:sage [2019/08/01(木) 00:22:27.40 ID:WaJjQk0q.net] >>95 ネストするリストはこれで扱いが分かると思う ideone.com/3Ux3qB
101 名前:デフォルトの名無しさん mailto:sage [2019/08/01(木) 11:01:22.72 ID:vRty46fa.net] Pythonでdefの前にnumba.jitを書くと速くなるとありますが、これってVSCodeでも速くなるのでしょうか? 手元のVSCodeでjitの有りと無しを何度か比較してみましたが、 全く変わりませんでした。 https://qiita.com/termoshtt/items/d6cf43e777946b3c1d93
102 名前:デフォルトの名無しさん mailto:sage [2019/08/01(木) 11:57:34.76 ID:ll2IFwWp.net] JIT って、実行時に、ネイティブ機械語にコンパイルするやつか? こういうのは、10〜100万回以上ループしないと、起動されないだろ ループ回数が少ないのに、コンパイルしたら、 コンパイル時間が掛かるから、かえって遅くなるから
103 名前:デフォルトの名無しさん mailto:sage [2019/08/01(木) 12:17:28.05 ID:vRty46fa.net] ループを万単位でやるような処理にしか効果が無いのですね。 Numpy配列を処理するのに数分〜数時間かかるので、短縮出来たらって思っていたのですが、 ループが数十回程度では意味が無いと。
104 名前:デフォルトの名無しさん [2019/08/01(木) 17:40:11.02 ID:Mluowczb.net] iOSのPythonista3使ってるひといる?
105 名前:デフォルトの名無しさん mailto:sage [2019/08/01(木) 18:24:07.46 ID:OiOUYaaa.net] 1000万ループぐらいが目安じゃないか。
106 名前:デフォルトの名無しさん mailto:sage [2019/08/01(木) 20:59:56.59 ID:SxGuvXM5.net] >>104 ノ
107 名前:デフォルトの名無しさん mailto:sage [2019/08/02(金) 09:57:31.57 ID:6a3UYtYQ.net] PythonistaとSiriで遊んでるけど正直やることない
108 名前:デフォルトの名無しさん mailto:sage [2019/08/02(金) 10:39:26.09 ID:JZxSnlpS.net] Pandasって癖強くない? 一次元配列作るにはpd.Series 二次元配列作るにはpd.DataFrame 要素を参照するときはdf.loc locつけないとdtypeとかまでくっついてくる でもnumpyにはない機能があって便利 クセが強いんじゃあ
109 名前:デフォルトの名無しさん [2019/08/02(金) 10:40:30.08 ID:e58H0HHK.net] 癖はあるけどそこまで強いとは思わない (もっと酷いのがあるからね) 行指向と列指向の違いなだけ
110 名前:デフォルトの名無しさん [2019/08/02(金) 10:42:47.06 ID:AOnLXk6R.net] クセが強いのはむしろ matplotlib の方だと思う
111 名前:102 mailto:sage [2019/08/02(金) 11:48:11.80 ID:G/LyK8vk.net] Ruby では、 JRuby(Java 実装系)のJIT は、百万回からコンパイルされる。 一千万回(実行時間で、1秒)では、なんと、MRI(C 実装系)よりも速くなる!
112 名前:デフォルトの名無しさん mailto:sage [2019/08/02(金) 11:55:44.26 ID:2UnKye9C.net] 早さより美しさがpython 2->3 で遅くなった
113 名前:デフォルトの名無しさん [2019/08/02(金) 13:23:49.11 ID:pNfdvdEO.net] pandas で df.loc[x] のようにloc内に変数を入れるとエラーが出るのはなぜですか? inputで数字を入れたいのですが、うまくいきません。
114 名前:デフォルトの名無しさん mailto:sage [2019/08/02(金) 13:44:55.02 ID:z8xg2/9P.net] コード全部貼って
115 名前:デフォルトの名無しさん [2019/08/02(金) 15:24:58.03 ID:8aCJW7PF.net] >>113 インデックス指定ならlocじゃなくてiloc
116 名前:デフォルトの名無しさん mailto:sage [2019/08/02(金) 22:10:56.91 ID:sFPuwMhI.net] matplotlibはメインフレーム時代の描画ライブラリを思いだしてしまう
117 名前:デフォルトの名無しさん mailto:sage [2019/08/02(金) 23:38:19.91 ID:z2PJQeJ8.net] 組み合わせの問題で、10個の要素を2個ずつに分ける組み合わせは itertools,combinations(range(10), 2) で出力できますが、10個の要素を1,2,2,5個に分ける組み合わせ というように均等ではない個数に分ける場合、どうやればいいでしょうか? ここでし知りたいのは組み合わせ数ではなく実際の組み合わせのパターンです 10個の要素を1,2,2,5個に分ける組み合わせ数だけでしたら C[10,1]*C[9,2]*C[7,2]*C[5,5] で求まるのはわかりますが、itertools,combinations のようにその実際の組み合わせパターンを出力させたいのです よろしくお願いします
118 名前:デフォルトの名無しさん [2019/08/03(土) 04:10:00.95 ID:ICMqRxFR.net] 10->5+5 5+5->5+(3+2) 5+3+2->5+2+2+1 で良いんじゃね
119 名前:デフォルトの名無しさん [2019/08/04(日) 13:35:01.70 ID:kKKVz9aw.net] >>117 再帰なのであまりにも多い要素の組み合わせは出せないけど、これでどうでしょ from itertools import combinations def my_combinations(iterable, rs, tmp=None): r, *rs2 = rs for t in combinations(iterable, r): tmp2 = [] if tmp is None else list(tmp[:]) tmp2.append(t) tmp2 = tuple(tmp2) if rs2: lis2 = list(iterable)[:] for i in t: lis2.remove(i) for r in my_combinations(lis2, rs2, tmp2): yield r else: yield tmp2 if __name__ == '__main__': for t in my_combinations(range(10), (1, 2, 2, 5)): print(t)
120 名前:119 [2019/08/04(日) 14:00:35.50 ID:kKKVz9aw.net] >>117 1読んでなかった。こちらに貼りました https://ideone.com/ZULUmH [] [ここ壊れてます]
122 名前:デフォルトの名無しさん mailto:sage [2019/08/05(月) 05:53:53.11 ID:7PMYXnod.net] Pythonを勉強するならWindowsとMacのどちらが良いですか?
123 名前:デフォルトの名無しさん mailto:sage [2019/08/05(月) 08:54:00.81 ID:jXimdt0Y.net] Linux仮想マシンでやるのがいいけど 苦手なら持ってるマシンで適当にやればいい
124 名前:デフォルトの名無しさん [2019/08/05(月) 11:12:01.58 ID:NOA3rn3w.net] うbyなら絶対MacだがPythonならどっちでも良い
125 名前:デフォルトの名無しさん mailto:sage [2019/08/05(月) 22:00:03.76 ID:YLLjXt4U.net] 何でpythonクラスには、privateが無いのよ!
126 名前:デフォルトの名無しさん mailto:sage [2019/08/05(月) 22:26:29.97 ID:RbDOK4UK.net] ここは開発者のお気持ちを予想するスレッドじゃないのでTwitterで直接聞いてこい
127 名前:デフォルトの名無しさん mailto:sage [2019/08/07(水) 18:25:18.92 ID:z9kpjDHf.net] そんな思い処理やってないはずなのに処理が重い って時はどうやって測れば良いの? 処理時間てよりどれくらいメモリ使ってるかとかが知りたい あとタスクマネージャで見たpython.exeのメモリ使用量が大きすぎて気になるけどこれ信用していいのかな…
128 名前:デフォルトの名無しさん mailto:sage [2019/08/07(水) 19:38:41.63 ID:QJETJeRx.net] python のプロファイラーなにがいいかな
129 名前:デフォルトの名無しさん mailto:sage [2019/08/08(木) 11:36:02.41 ID:FAqDS6zu.net] ターミナルで実行した時はメッセージを出すための処理をしたいけど、crontabで動かすときはメッセージは不要だからその処理は飛ばしたいです どう書くんでしょうか?
130 名前:デフォルトの名無しさん [2019/08/08(木) 11:39:38.50 ID:YYsAu0ua.net] syslog
131 名前:デフォルトの名無しさん [2019/08/08(木) 11:43:42.62 ID:YYsAu0ua.net] https://docs.python.org/ja/3/howto/logging.html
132 名前:デフォルトの名無しさん [2019/08/08(木) 11:44:23.26 ID:YYsAu0ua.net] https://docs.python.org/ja/3/library/logging.html
133 名前:デフォルトの名無しさん mailto:sage [2019/08/08(木) 11:49:52.89 ID:FAqDS6zu.net] どうもありがとうございます なんだか難しそうですね ターミナルかcrontabのどちらで起動させてるかをなんらかの方法で判断して、ifで分岐させればいいのかなーって思ってました
134 名前:デフォルトの名無しさん mailto:sage [2019/08/08(木) 12:25:37.94 ID:g3OLctgj.net] if sys.stdout.isatty(): print('hoge')
135 名前:デフォルトの名無しさん [2019/08/08(木) 12:26:13.26 ID:YYsAu0ua.net] >ターミナルかcrontabのどちらで起動させてるかをなんらかの方法で判断して、ifで分岐させればいいのかなーって思ってました そうだよ 最初にif一回だけ書けばあとは切り替わるのがlogger コードの至る所にif埋め込む積もりだったのか?
136 名前:デフォルトの名無しさん mailto:sage [2019/08/08(木) 13:03:07.26 ID:FAqDS6zu.net] >>133 、>>134 そうです。いたるところにif書き込まないといけないのかなぁと思っていました。 じっくり調べてみます。 関数A 関数B(Aをターミナルに出力) 関数C(requestsを使ってapiにAをpost) 関数D(時間がかかる処理) があるとします 関数B〜Dの3つをThreading.Threadを使うと 関数Dが動き始まるまで時間が逆に1秒くらい遅くなってしまいました concurrent.futuresだと速度改善出来るかもしれないっぽいんですが、シングルコアのRaspberry Pi Zeroでも早くなりますか? シングルコアだからmax_workersは1にしないといけないと思うので、concurrent.futures使う意味ないですか?
137 名前:デフォルトの名無しさん [2019/08/09(金) 07:20:44.68 ID:yhHNDqxR.net] pythonでGUI操作で、たとえばネットワーク接続設定で、IPアドレスを入力する欄 があると思うが、これを手入力でなくて、pythonで代わりに入力することは可能? ソースコード的にはどうなるのかな。
138 名前:デフォルトの名無しさん mailto:sage [2019/08/09(金) 07:41:26.45 ID:err5h/zJ.net] Python (Python 3.7)のインタプリタで真偽値に色を付けることって可能ですか? >>> l1 = [1, 2, 3, 4, 5] >>> 3 in l1 True ↑このTrueを例えば緑色にしたいです。
139 名前:デフォルトの名無しさん mailto:sage [2019/08/09(金) 07:46:58.18 ID:mN7yEvAK.net] >>136 Windowsだと仮定してpywinautoってのがあるみたいだな linuxなら設定ファイルいじった方が早かろう
140 名前:デフォルトの名無しさん [2019/08/09(金) 11:42:06.57 ID:VpFvSLvY.net] >>136 windows ならコマンドプロンプトから netsh 使え それでうまく行ったら python からそれを実行汁
141 名前:デフォルトの名無しさん mailto:sage [2019/08/09(金) 18:48:00.65 ID:aNdhyhrS.net] windowsでPython動かす時、windowsにpythonインストールするのと、WSLのubuntuにpythonインストールするの
142 名前:ヌっちがいいんだろ rubyみたいにlinuxの環境にしておいたほうが無難かね [] [ここ壊れてます]
143 名前:デフォルトの名無しさん mailto:sage [2019/08/09(金) 19:04:04.27 ID:PkuMuXNC.net] 安いラズパイ買ってそっちで動かす
144 名前:デフォルトの名無しさん [2019/08/09(金) 19:20:36.55 ID:X5pM/Zqg.net] やりたいことによる。 windowsのguiアプリ作りたいとかじゃなけりゃ後者でいいんじゃ
145 名前:デフォルトの名無しさん mailto:sage [2019/08/09(金) 19:41:23.18 ID:xKlD1Jxx.net] >>136 Sikuli masuo.doorblog.jp/archives/51801518.html ちょっと変わり種 👀 Rock54: Caution(BBR-MD5:f2c519fe5384e767e1c9e99abdcfc293)
146 名前:デフォルトの名無しさん [2019/08/09(金) 19:59:23.36 ID:3aE869ZA.net] winにwin版pythonインスコでいい。 pythonはシェアが大きいとわかってるwin版を凄く重視してる。 シェアが大きいとわかってるOSを軽んじる言語は衰退してくから。
147 名前:デフォルトの名無しさん [2019/08/09(金) 20:03:47.89 ID:OfLBByV9.net] WindowsユーザーをコケにしてPython にシェア取られて衰退したRubyの悪口はやめろ!
148 名前:デフォルトの名無しさん mailto:sage [2019/08/09(金) 20:09:17.03 ID:KwAFZJpP.net] WindowsでPythonはじめたけど便利なライブラリ多くて楽だわ ライブラリ以外の7割くらいctypesで書いちゃってるが
149 名前:デフォルトの名無しさん mailto:sage [2019/08/09(金) 21:17:05.70 ID:BfiMWPAU.net] 普段遣いのアプレット用にウィンドウズ版 WSLで作業するとき用にLinux版 というか、WSLでubuntu入れれば勝手に入ってた