Pythonのお勉強 Part54 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2017/09/01(金) 16:44:47.30ID:igIE9hK/
Pythonオフィシャルサイト
http://www.python.org/

テンプレ等は2以降で

■前スレ
Pythonのお勉強 Part53
http://mevius.2ch.net/test/read.cgi/tech/1494683284/
2017/10/08(日) 02:52:13.78ID:2gYH4HGu
Windowsのためのraw文字列
2017/10/08(日) 08:40:50.91ID:Eg4i3QFB
バックスラッシュで置換できなかったってことは、U+005CじゃなくてU+00A5だったとか。
2017/10/08(日) 10:01:04.68ID:zWNWnJsd
>>289
\は特殊な記号で、\nは改行を意味するし、\bはバックスペースなの
これらはエスケープシーケンスっていうの

¥という文字を使いたい場合は\\とするの、もしくはraw文字列を使って入力するの
だから'\38,00'と直書きした場合は'\3'というエスケープシーケンス+ '8,00'ってことになるの
正しくは'\\38,00'とするかraw文字のr'\38,00'としないといけないの

html getで取得した文字は正しい文字列の'\\38,00'なの

>>> s='\38,00'
>>> s
'\x038,00'
>>> print(s)
8,00 ←ウンコ
>>>
>>> s='\\38,00'
>>> s
'\\38,00'
>>> print(s)
\38,00 ←正しく表示される
>>>
2017/10/08(日) 10:23:11.06ID:zWNWnJsd
ああ、あと>>290-291に言っときんだけど
オマエラさぁー、回答に関連ありそうなURLやキーワード張り付けて教えた気になってんじゃねーぞ
2017/10/08(日) 10:27:46.30ID:ACvYQg1d
すまん
ジョークは文化水準がある程度高くないと通じないということを忘れていた
2017/10/08(日) 11:28:38.21ID:FGX6bPrh
html getでもきっとうまく行かなかったんでしょ?
>>293は不十分で、>>290>>292が正解なんじゃないの?
2017/10/08(日) 11:56:38.40ID:UUYMKH1C
>>293
>だから'\38,00'と直書きした場合は'\3'というエスケープシーケンス+ '8,00'ってことになるの
ローカル環境でのテストの仕方間違ってましたね。文字の長さが変わる理由もこれでしょうね。


>'\\38,00'
>>> print(s)
>\38,00 ←正しく表示される
この最初の\を外してintにしたいから、(price.replace('\\', '')とかで外そうとしたけど駄目で、
今は配列に入れて強制的に頭からの数桁を削除して対応してます。
2017/10/08(日) 13:24:24.77ID:zWNWnJsd
>>> import re
>>> price='¥38,00(税込)' #全角の\
>>> int(re.sub(r'\D', '', price))
3800
>>>
>>> price='\\38,00(税抜)' #半角の\
>>> int(re.sub(r'\D', '', price))
3800
>>>

¥以外も削除する完璧な回答です、どうぞ
2017/10/08(日) 13:34:18.46ID:X8vdjNfB
295を本気にさせてしまったな
2017/10/08(日) 13:56:47.36ID:HosRocIl
とりあえず
円マークとバックスラッシュの話なのか
バックスラッシュのエスケープの話なのか
を切り分けてから議論しようよ...
2017/10/08(日) 14:04:24.51ID:zWNWnJsd
Pythonに直書きしてたのがバックスラッシュで
html getしてたのが円マーク
そして完璧な回答が>>298
分かったかな?
2017/10/08(日) 14:34:45.83ID:Fff+sH1Q
¥100 (内税8%)
先生うまく行きません!
2017/10/08(日) 14:41:16.77ID:X8vdjNfB
バカが多すぎ
2017/10/08(日) 15:03:14.57ID:Y61Wi2fA
自分はバカでないと言う根拠のない前提
2017/10/08(日) 17:18:33.82ID:eYQqUoDy
俺も馬鹿だけどお前らも馬鹿だな
2017/10/08(日) 18:02:09.80ID:X8vdjNfB
高卒がキレ気味でワロタw
2017/10/08(日) 18:30:31.32ID:CMWw5eHR
ブーメラン乙
2017/10/08(日) 19:00:51.46ID:UUYMKH1C
>>298
そのsubtractのメソッドでうまくいきました。
ありがとうございま\D


\D 任意の非 Unicode 10 進数文字にマッチします。した。
なんかすごいためになる情報でした。
2017/10/08(日) 19:02:36.03ID:UUYMKH1C
>>298
そのsubtractのメソッドでうまくいきました。
ありがとうございました。


'\D 任意の非 Unicode 10 進数文字にマッチします。'
なんかすごくためになる情報ですね。
2017/10/09(月) 00:49:09.60ID:XAANZ+GT
ブーメランも糞あるかよw
大学ぐらい普通に出とるわ

知障(高卒)と一緒にすんなっつーの(笑)
2017/10/09(月) 06:17:34.81ID:UEIAYP2F
いきなり高卒とか言い出す奴はF欄
2017/10/09(月) 11:59:41.58ID:mQYmdfeJ
機種依存文字の ?が削除できないんですが、
aaa.strip('?')じゃ駄目なんですかね?
他の文字だと問題ないんですけどね。
2017/10/09(月) 12:22:39.06ID:+Yk871Qd
MIT卒の俺から見ればみんな低学歴だわ
低学歴同士仲良くしろよ
314デフォルトの名無しさん
垢版 |
2017/10/09(月) 12:33:51.46ID:nnOwdodd
NEET卒のくせにw
2017/10/09(月) 12:39:45.83ID:e9tl0NhN
PyCon 12年連続1位の俺からしたらみんなスパゲッティコードだわ
2017/10/09(月) 12:58:02.95ID:NAQzkiiY
書き込めない・・・テスト
317デフォルトの名無しさん
垢版 |
2017/10/09(月) 13:22:07.49ID:7RuyVWXL
>>314
NEETから卒業してるなら、それはそれで偉くね?
2017/10/09(月) 13:24:51.77ID:K5KMjKcZ
俺はNEETに残って研究を続けるぞ〜
2017/10/09(月) 13:25:26.76ID:NAQzkiiY
>>312
機種依存文字の?と、直書きの?は見た目は同じでも文字コード値が違う
?に見えるからって直書きで?で指定しても全く無意味

まず問題の機種依存文字を調べる、ここでは仮にその機種依存文字を'謎'とする
>>> aaa = 'hoge謎'
>>>
>>> for i in aaa: print(ord(i))

104
111
103
101
35598
>>>

ord関数で文字の文字コード値が分かる、'謎'の文字コード値は35598
文字コード値を文字に変換するのはchr関数だから
>>> aaa.strip(chr(35598))
'hoge'
>>>
2017/10/09(月) 13:26:50.17ID:NAQzkiiY
括弧を全角の(にしたら書き込めたわ
連続した括弧がアカンのか? よく分からんわ
321デフォルトの名無しさん
垢版 |
2017/10/09(月) 22:51:02.72ID:XxdTmD6P
(i) <てst
322デフォルトの名無しさん
垢版 |
2017/10/09(月) 23:02:08.22ID:0FScRfWB
お、おめこや
2017/10/10(火) 08:37:30.54ID:aulArmiW
for i in aaa: print(ord(i))

テスト
2017/10/10(火) 08:38:23.36ID:aulArmiW
chr(35598)
テスト
2017/10/10(火) 08:41:16.81ID:aulArmiW
分かった!
(chr(35598))
この括弧を半角にすると書き込めない
2017/10/10(火) 12:50:24.44ID:+q2Bmvm8
>>325
乙。でもどういうことかわかんないよ!
全体を半角カッコで囲んだらアウトってこと?
2017/10/10(火) 13:00:08.55ID:aulArmiW
>>323はOKだから、入れ子の括弧の中に数字があるとダメじゃないのかな?
((33))
テスト
2017/10/10(火) 13:06:27.20ID:aulArmiW
あれれ? 書き込めたわ・・・
chr付けた書き込めなかった→ (chr(33))
chrの外の括弧を外しても書き込めなかった→ chr(33)
chr関数の引数が無い場合も書き込めなかった→ chr()

まとめ
chr関数を書くとダメみたいだね
2017/10/10(火) 15:14:21.45ID:SGJO8ou1
>>319
なるほどですね。
何がくっついているのかは、時と場合によるのですが、
機種依存文字だけを取り除く方法ってありますかね?
文字コードが5桁だと機種依存文字って判断したら駄目かな
2017/10/10(火) 15:38:38.15ID:aulArmiW
駄目に決まってんじゃん
機種依存文字の一覧はググれば出てくるよ
2017/10/11(水) 01:10:30.04ID:TZemWZV4
“なるほどです”ってすごいバカっぽいな
2017/10/11(水) 22:08:46.20ID:nNRWIZy5
python初心者なのですが、

class test:
def testfunc(self, y):
self.x = y
x = y

このself.xとxの変数はスコープ以外に何か違ったりしますか?
2017/10/11(水) 22:12:03.79ID:nNRWIZy5
スペース消えた……
どっちの変数もインテンド2つ分です
2017/10/11(水) 22:13:33.07ID:YFL/9Ydt
(U)とか(i)ってイヤらしく感じる
2017/10/11(水) 22:13:39.98ID:nNRWIZy5
すいません変なタイプミス・・・インデントです
2017/10/11(水) 22:16:15.81ID:iHsyneUf
とても強い意図であることは分かった。
2つの変数は別物だよ。
337デフォルトの名無しさん
垢版 |
2017/10/11(水) 22:18:27.93ID:/s7Nkk2O
>>334
とても強いエロを感じる
338デフォルトの名無しさん
垢版 |
2017/10/11(水) 23:25:24.73ID:Zzyc4gmK
>>331
意義あり!
2017/10/11(水) 23:32:55.64ID:lP/CDQFD
なるほどだす
2017/10/12(木) 13:21:38.97ID:uZnuZ+2W
>>332
globalつけるともっと違う
2017/10/12(木) 14:21:23.46ID:OJ6WwI1s
だめだす
2017/10/13(金) 09:45:02.60ID:BWoTjir1
チラシの裏

windows で tensorflow が 3.6にも対応していたので、3.6.3を入れてみた。
いきなり pip install tensorflow したら、必要なものぜんぶとってきてくれてノーエラーノーウォーニングであっさり入った。
すげー!

ついでに pip install mod_wsgi してみた。
mod_wsgi-express.exe ???
何だそれ?
mod_wsgi-express module-config
で出てきた3行をhttpd.confにコピーしてみた。
エラー。
pipしたのは、まだ、tensorflowとmod_wsgiだけだからな。
アプリで使ってるパッケージをpipしてみた。
どれも難なくというかパーフェクトにサクサク入る。
で、これまたあっさり最新のmod_wsgiでアプリが動いたwww
makeファイルを修正してmod_wsgi.soを作る手間が要らなくなった。

なんかもうwindowsでいいって気分。gpu c++ 関係は割とwindowsの人が多いし。
343デフォルトの名無しさん
垢版 |
2017/10/13(金) 10:40:59.06ID:pR0qV+RO
test
344デフォルトの名無しさん
垢版 |
2017/10/13(金) 11:25:21.67ID:Hu5pWW8/
>>342
まぁでも、mod_wsgi作ってる人がWindows上で直に使わ無い方がいいって言ってるんですけどね
せめて、dockerコンテナ内のLinux使えと。
2017/10/13(金) 16:25:01.24ID:ScslFrOK
そんなことで喜ぶとかwindowsは大変だな
2017/10/14(土) 14:04:05.31ID:TG6KQnkb
>>342
ruby経験者がpythonに来ると夢の世界が待っております
2017/10/14(土) 14:33:13.91ID:nAGT83AF
いいか、
Perlは、この世界で一倍いい言語だ!
いちばん優れた軽量プログラミング言語なんだ!!

おれには
Perlしかないんだ!
だから、これがいちばんいいんだ!!
2017/10/14(土) 22:51:00.77ID:eFSrzMsO
http://abc075.contest.atcoder.jp/submissions/1685237

このソースコードなのですが、
[0] * H や
[[0] * (W+2) for i in range(H+2)]
は何をやってるんですか?
2017/10/14(土) 23:20:05.16ID:ZjGmTFeR
>348
[0]*Hは、要素数H個で、値が全て0のリストを作っている。

下のは、二次元配列に相当する入れ子のリストを作っている。
一つ目の添字は0からH+1までのH+2個分で、
二つ目の添字は0からW+1までのW+2個分

c[h][w] で、h行w列目のデータにアクセス出来る。
2017/10/16(月) 23:41:10.10ID:pw2zTQ02
pyenvの初期化にはbashとかで
eval "$(pyenv init -)"
とせよとあり、この'-'はUNIXの慣例に照らせば標準出力を表すファイル名としての'-'だと思うのですが
 pyenv init test.txt
とやってもtest.txtができない…
2017/10/17(火) 00:43:46.52ID:uuhhfaBw
>>349
遅くなったけどありがとうございます
2017/10/17(火) 09:03:22.03ID:0wzwgGfF
>>350
ソース3行くらい読むと分かるよ
https://github.com/pyenv/pyenv/blob/master/libexec/pyenv-init

ファイルに落としたいならこうかな?
$ pyenv init - > test.txt
2017/10/17(火) 20:15:20.79ID:fO6Q7s1J
>>352
レスdクス、
なんじゃそりゃあああああああああ!

ちなファイルに落とすのはこうやればできていた
$ echo "$(pyenv init -)" > test.txt
ので実はさほど困ってはいなかったが「-」がわけわかんなくてスゲー悩んでた;
354デフォルトの名無しさん
垢版 |
2017/10/20(金) 15:55:38.53ID:sAkkqhU+
ばかちん
2017/10/20(金) 22:03:10.75ID:QqXEyXEA
先月からpython始めた初心者です。
yahooファイナンスにアクセスして、ポートフォリオに登録してある株の現在値一覧を取得するプログラムを書いたんだけど、毎回ログインが必要で結構時間が掛かります。(seleniumのwebdriver使ってheadlessモード)
これって、cookieとか使うとログイン維持できて毎回ログインしなくて済むようになるんすか?
2017/10/20(金) 23:00:07.32ID:h7aVEIq7
サイトのHTML を解析すれば、ログインも自動化できる

ユーザー名・パスワードを入力して、フォーム送信ボタンを押す
2017/10/21(土) 00:28:34.36ID:ZBCKl1CT
>>356
レスさんくすです。ログイン自動化はできてますが、(yahooなんで) login-nameとpasswordの2段階で、その間にちょっとwait入れたりして、結構時間かかるんですよね。まぁ回線が遅いのが一番の原因だけど。で、毎回ログインしなくてもいけるようにできないのかなと、
2017/10/21(土) 02:10:05.41ID:L87nxTYD
Pythonなら大丈夫
2017/10/22(日) 02:52:19.07ID:MLpq6jOs
ubuntuの設定で一日使ったわ
全くの素人だから2と3の設定とか共存ワケワカラン
2017/10/22(日) 08:14:32.64ID:8vyNBiTj
そう、pythonならね。
2017/10/22(日) 11:47:29.26ID:4xyHmATU
付属のspyderすらよく分からないガチな初心者なんやけど、BASICの感覚で覚えられると思ってたら何から何までチンプンカンプンで初心者でも分かりやすいサイトか入門書あれば教えてちょんまげ
最終的にはゲーム作りたい
2017/10/22(日) 12:12:35.80ID:3Fv7GeHN
ゲームやるならc++かc#やれよ
2017/10/22(日) 13:23:16.24ID:gIHMMZHA
AI搭載型卓上ゲームならpythonでええぞ
364名無しさん@そうだ選挙に行こう! Go to vote!
垢版 |
2017/10/22(日) 19:53:28.01ID:TNgDAF9+
リアルタイムでmatplotlibのグラフを更新して、その様子を見ながらグラフに使われているパラメータを変更したいです
リアルタイムアニメーションまでは出来ました
アニメーション中にguiでのパラメーター入力を付けるというのは方向性としては良いアプローチでしょうか?

tkinter等でグラフ表示等も一から作る方が普通ですかね?
365デフォルトの名無しさん
垢版 |
2017/10/22(日) 23:35:20.53ID:T5g6OFOX
おすすめの入門書教えてクレメンス
2017/10/22(日) 23:54:00.65ID:gIHMMZHA
最初は本見ても捗らんしtubeの講義聴きながら模倣するのが良いよ
ちょい古いけど下のハゲの説明は凄いわかりやすい
細かい言語仕様なんてのは使ってから覚えれば良いんよ

http://www.youtube.com/watch?v=A9tv7WBIwyM
2017/10/23(月) 00:06:18.31ID:Bxzo9A+x
>>364
アニメーションてのが何するつもりなのかよくわからないけど、、、、
matplotlibで描いたグラフはFigureCanvasWxAggを使ってwxのUIに乗せられるよ
やったことないけどtkinterでも何かしら方法があるんじゃないのかな?
2017/10/23(月) 00:11:16.58ID:A3jhOkfm
>>365
まずこの本で、オブジェクト指向を学ぶ
スッキリわかる Java入門 第2版、2014

その後、この2冊をこの順に読む
たのしいRuby 第5版、2016
みんなのPython 第4版、2017

いきなり「みんなの」から読むと、難しくて無理
2017/10/23(月) 00:21:50.05ID:Bxzo9A+x
>>368
まだやってんのかよ、そのひどい遠回り推薦。
2017/10/23(月) 00:58:39.36ID:phfl82OJ
俺、pythonの解説書を一冊も読んだことないけど、
ネット上にある情報で、他の言語のプログラムを、
pythonではどうなるか、とか調べてるうちにそれなりに書けるようになった。
他人の書いたプログラムを改造するのもいいかも。
まぁ、プログラミング初心者ではないから、ちょっと違うか。
2017/10/23(月) 01:27:33.69ID:+9jYDrtb
Pythonに限らず、きょうびは公式のチュートリアルなどが充実しているよね
2017/10/23(月) 01:29:28.55ID:+9jYDrtb
>>366
内容はいいのかもしれんけど、ハゲ散らかしたおっさんがなあ…
金髪白人天才美少女ならよかったのに
373デフォルトの名無しさん
垢版 |
2017/10/23(月) 07:42:46.52ID:RGFT1PbK
>>366->>372
thx
374デフォルトの名無しさん
垢版 |
2017/10/23(月) 07:48:09.77ID:BuwAMsXV
ハゲに教わるとハゲるからなその覚悟だけはヨロ
2017/10/23(月) 09:31:10.32ID:0cxC85PZ
>>374
毛の少ない人に対するヘイトスピーチはやめなさい
376デフォルトの名無しさん
垢版 |
2017/10/23(月) 10:13:36.45ID:tj3bY27g
>>367
アニメーションするグラフを見ながら、パラメーターや条件をguiでの入力で少しずつ変更するという事をやりたい(良さそうなパラメーターや条件を試行錯誤で探したい)

ただ、matplotlibを使った用途としてはあまりやらないのかなと思ったので(ざっと探した所ではアニメーション自体も使っている方が少なかった)
そういう用途ならpygameか何かで表示部分を作るのかなと思い質問してみました

もう少し同じような事をやっている方がいないか探してみます
アドバイスありがとうございました
2017/10/23(月) 12:23:36.10ID:BXzCXH2k
>>376
いやだから、FigureCanvasWxAggなりTkAggなりを使ってmatplotlibが描くグラフをUIに載せてデータを好きに触ればいいじゃないのさ、、、と言ってるんだけど。

早い話、画面上に配置されたUIを使ってグラフに表示するデータを変えて、そのままグラフが更新できれば良いんじゃないの?
2017/10/23(月) 12:32:56.01ID:oaK+mxwH
>>376
https://stackoverflow.com/questions/6697259/interactive-matplotlib-plot-with-two-sliders#6697555
こういうのでいいんじゃないの
サンプルコードもそのまま動く

python draw graph slider event listener とかで検索すれば山ほど出てくる
379デフォルトの名無しさん
垢版 |
2017/10/23(月) 17:07:02.45ID:lCIoxZis
>>364
OK
380デフォルトの名無しさん
垢版 |
2017/10/23(月) 19:06:04.44ID:BuwAMsXV
>>375
ちょいとそこの毛の少ない、もとい、毛のないお方
その人聞きの悪い言い方ぁ取り下げてもらえませんかねぇ
あっしぁ〜ハゲに対して憐みの感情はありますけどもねぇ
ヘイトなんて気持ちは毛頭ござんせんよぅ
2017/10/23(月) 20:19:57.00ID:NosJ+6d4
pcにはanaconda入れてるがandroidタブレット用に同じの入れれないかな。
qpythonてのを入れてるがnumpyが使えないから不便
2017/10/23(月) 20:44:07.80ID:B0rhkEQ/
PCにリモート接続する方がまだマシ定期
2017/10/23(月) 23:34:34.10ID:NKAmnKE1
>>376
普通はパラメータの変更か、更新ボタンをトリガとして再作成再描画で事足りるな
どこまで感性に訴えるかは自由だが、業務用なんかだと繰り返し使うことにより脳内でイメージされるから無駄と見做してる
2017/10/23(月) 23:56:29.78ID:bPsM7Yc9
定期的にタブレットでお遊戯したいって来るのね
385デフォルトの名無しさん
垢版 |
2017/10/24(火) 06:08:34.30ID:MGKYkkj+
>>381
yoga book
2017/10/24(火) 23:40:25.58ID:wj00lXqk
iOSならPythonとかSwiftとか使えるんだっけか
ipadpro持ってるけど試そうと思ったことすらなかった
2017/10/25(水) 09:30:02.61ID:ImLJOnbp
AndroidならTermuxがいいんじゃない
2017/10/25(水) 11:09:52.34ID:SmjJVa23
termuxはgui系だめだしなぁ
結局タブレットでpython使って遊ぼうとするとwindowsタブレットが一番手っ取り早い。
でもatom xN系のCPUで込み入ったことすると重いよ。
2017/10/25(水) 11:41:39.05ID:32/KECdp
crouton
390381
垢版 |
2017/10/25(水) 13:12:31.58ID:brfoWM6t
レスサンクス、いろいろ解がありますね。yogaのwin版良さげだけど自分、開発はpcでやって使うのはもっぱら寝床だから690gはちと辛い。
termuxは知らなかった。root取らなくても行けるらしいので試してみるわ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。