Pythonのお勉強 Part57

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/06/25(月) 09:57:59.24ID:aY7uj4w5
Pythonオフィシャルサイト
http://www.python.org/

■前スレ
Pythonのお勉強 Part56
http://mevius.5ch.net/test/read.cgi/tech/1519430841/

次スレは>>980が挑戦する

ソース貼れるサイト
https://pastebin.com/ ペーストビン
https://ja.osdn.net/pastebin/ OSDNコピペ ログインしないで投稿すると一週間で自動削除
2018/09/02(日) 13:47:02.10ID:IoPNUzha
>>470
今のところnumpyは入らないな…
2018/09/02(日) 17:46:53.99ID:KQEI5sPo
>>472
python-devとlibcrypy-dev入れたらイケた

https://i.imgur.com/qGjoGTY.jpg
2018/09/02(日) 20:20:39.35ID:u9h+2eE3
>>473
うわできた。thx
475デフォルトの名無しさん
垢版 |
2018/09/02(日) 21:45:39.52ID:3u4eKNRR
>>469
くっ・・
iPhone AppのPython2IDEはオフライン専用だった・・
ダメじゃん
https://i.imgur.com/OOuQ6dX.png
476デフォルトの名無しさん
垢版 |
2018/09/02(日) 21:51:39.60ID:G7XyOpjM
>>471
小学校教師なんかsympyもscipyも覚えんでいいやろ。中学教師はそのどっちか。高校の教師だって線型やってないからnumpy覚える必要ない。
2018/09/02(日) 21:54:43.43ID:NdoNeabl
iOSだったらPythonistaがいける
NumPyとMatplotlibはデフォルトでインストール済み
pandasはバージョンが合わないみたいでインストール出来なかった
478デフォルトの名無しさん
垢版 |
2018/09/02(日) 22:30:17.83ID:j/bgxBCr
>>477
うむ。さっき買いました
ウィジェットに登録できたり、workflowで連携できたりと、最初からコレ買っておけばよかった
サンプルのブロック崩しゲームがスピード速くて驚いた
Pythonだけでコーティングされてることに二度びっくり
実はCythonなんじゃ・・
479デフォルトの名無しさん
垢版 |
2018/09/03(月) 01:09:44.62ID:esF28k94
pygameなめたらいかん
480デフォルトの名無しさん
垢版 |
2018/09/03(月) 01:12:03.00ID:Qj1frNKo
Raspberry Pithon があってもいい。
2018/09/03(月) 01:33:16.95ID:ZDGmACaO
東大のロゴってPythonと見間違うよな

http://docodoor.net/wp-content/uploads/2017/09/logo0015h.jpg
482デフォルトの名無しさん
垢版 |
2018/09/03(月) 01:48:16.09ID:Qj1frNKo
これ完全にパクりだよね。
著作権法違反だよね。
483デフォルトの名無しさん
垢版 |
2018/09/03(月) 11:25:58.93ID:dhYkuZhG
>>481-492
ワロス
484デフォルトの名無しさん
垢版 |
2018/09/03(月) 11:28:09.96ID:dhYkuZhG
意味はあるんだな
http://designblog.nesuta.com/ロゴストック/日本を代表する大学のロゴは、「色」にこだわり/
2018/09/03(月) 17:06:53.41ID:IUTdxFc1
>>477
それどうやってpip使うの?
486デフォルトの名無しさん
垢版 |
2018/09/03(月) 18:54:32.40ID:dhYkuZhG
https://pip.pypa.io/en/latest/installing/
get-pip.py

なさけはひとのためならず
2018/09/03(月) 19:52:07.86ID:/OneUvea
エレキバン
2018/09/03(月) 20:46:08.82ID:7H6aQ99H
>>485
Pythonista pipでググれば裏技が見つかるよん
489デフォルトの名無しさん
垢版 |
2018/09/03(月) 23:20:51.68ID:FL612rqW
>>477
StaShをインストールして
そこからpip install pandasしたら
インストールできたよ
490デフォルトの名無しさん
垢版 |
2018/09/04(火) 04:07:43.32ID:5UJEY9mj
>>487
横矢勲
2018/09/04(火) 08:45:49.31ID:Hh9hh93p
>>489
動く?
試したの昔だから記憶曖昧だから
インストール出来たけどエラー出て動かないだったかも
あとで、試してみる
492デフォルトの名無しさん
垢版 |
2018/09/04(火) 14:01:44.50ID:/dqWZroa
>>491
ダメっぽい
importエラーでた
ダメじゃん!
493デフォルトの名無しさん
垢版 |
2018/09/05(水) 12:51:00.40ID:b1qw9eMx
macでvim使いたいんだけどpython3を有効にできひん
brewで―with-python3してるのに…
494デフォルトの名無しさん
垢版 |
2018/09/05(水) 22:14:57.87ID:ctGrg6wx
fx-CG50で使えるPythonはMicro Python 1.9.2で
モジュールは標準モジュールのサブセットです
またモジュール名が"u"で始まるそうです
jsonなら、ujson
mathはそのまま

逆にMicroPython固有ライブラリがあり
macineにはハードウェア固有の機能へのアクセス
MicroPythonはタートルロボットやワンボードマイコン、組込み系に使われてるのでハードウェア制御用ライブラリが用意されてます

fx-CG50の標準スクリプトでは表計算や複素数、行列演算、グラフ描画等々へフルアクセスできるのに
MicroPythonだと制限受けるのはなんとも勿体ない点でしょう
ストレージやワークメモリに制限あるため仕方ないのかも
CASIO独自にPytho処理系を構築でもしない限り今後も難しいでしょうね

CASIOやHP※1、TI※2はマシン固有のスクリプトを搭載してるからいいとして、
同じくMicroPythonを標準スクリプトに採用したNumWorks社のグラフ関数電卓は他社より使えるモジュール数が多い
math,cmath,random,kandinsky の4つを用意
他社よりリソースが少ないが、シンプルさを売り文句にしているので構わないんでしょう
あくまでプログラミング学習用途向けっぽい

※1:HP Prime搭載CASのスクリプトにPythonを採用
※2:2019年初頭に対応予定
495デフォルトの名無しさん
垢版 |
2018/09/06(木) 08:19:21.41ID:ntAiYVJq
ROSでPythonぶん回すぜ
496デフォルトの名無しさん
垢版 |
2018/09/06(木) 22:56:05.86ID:7SYjzDMa
iPhoneのpythonistaで表示してるSafariのキャッシュのHTML取得する方法教えてください
2018/09/06(木) 23:00:16.20ID:jEPt2f2o
常識的に考えろ
んなことできたら情報盗み放題やないか
498デフォルトの名無しさん
垢版 |
2018/09/06(木) 23:38:51.93ID:7SYjzDMa
>>497
それがworkflowで出来てるんだ
pythonでも出来ないのかなあと思って
499デフォルトの名無しさん
垢版 |
2018/09/07(金) 00:13:53.53ID:KC9AUckT
機内モードでもSafariのshare extensionからworkflow起動して
Get Details of Safari Web Page使うと取得出来るから
Safariからキャッシュもらってると思う
そして元のHTMLと違うからSafariで処理した後のHTMLのキャッシュかと…

どうやるんだろう
2018/09/07(金) 01:13:44.56ID:b3UbIyq5
appex.get_web_page_info()

フォーラム見ると
これで取れるらしいけど
上手く取れないという人もいて
俺も取れなかった

悩むならrequestsとbs4使った方が
早そうだわ
2018/09/07(金) 01:25:41.06ID:b3UbIyq5
あー
safari 再起動したら取れた
502デフォルトの名無しさん
垢版 |
2018/09/07(金) 01:38:09.25ID:KC9AUckT
>>500
ありがとう!
2018/09/08(土) 10:58:55.15ID:ZYIqURiL
100GB前後のcsvデータを読み込んで処理して
グラフ化したいんですけどいいライブラリとか方法ないですかね?
504デフォルトの名無しさん
垢版 |
2018/09/08(土) 11:30:51.31ID:8EdXckwk
>>503
pandasとmatplotlib以外しらね
2018/09/08(土) 12:56:38.71ID:YAzsdoWF
メモリ容量が100GBもないだろうからまず全データを一気に読み込むことは不可能なので
適当に分割してループで処理して結果を集計していくしかないので、各ループでやることは
ごく一般的なデータ処理でしかない
ちなみに100GBの時系列データをそのまま並べて時系列グラフにしたいということなら
それらを見分けられるような解像度のディスプレイは存在しないので数千点ぐらいにまで間引いても見た目は変わらない
2018/09/08(土) 13:55:57.06ID:UCzuGyPm
>>503
どんな処理をしたいのか知らんけどDBに処理させるのが簡単かと
2018/09/09(日) 00:39:57.47ID:RAeMnLUC
100GBって随分巨大だな、なんのデータだろ?
508デフォルトの名無しさん
垢版 |
2018/09/09(日) 01:27:13.18ID:Sqzx0gV9
名簿とかそんな類いかな
2018/09/09(日) 02:25:19.05ID:MeVCq1uS
さすがに1ファイル100GBなんてことはしてないよな
俺なら1ファイル256MB程度に分割したり、バイナリで保存したりするわ
2018/09/09(日) 08:27:22.90ID:9VDxdwJ8
お前らと違ってビッグデータ抱えてんのよ
2018/09/09(日) 08:35:34.50ID:sFuHefah
中国10億人の個人情報とか?
2018/09/09(日) 09:39:12.78ID:c7NslBKa
cythonのlibcpp.algorithm.sort
に比較関数でなく関数オブジェクトを渡すには
どうすればいいですか?
513デフォルトの名無しさん
垢版 |
2018/09/10(月) 06:14:44.93ID:ilJkU1TI
https://twitter.com/ikuko_b/status/1038666078941929474?s=19

https://twitter.com/ikuko_b/status/1038633441854611456?s=19

ITeensLab主催の親子仮想通貨講座に息子と来ている。こば先生 @ITeensKOBA の話、熱い!

この世紀の発明でこの先何ができるようになりそうなのか、子供の今、これを知っておくとどんなメリットがあるのかをわかりやすく話してくれている。

息子の目がキラキラしてきた!



宮脇@サイバーセキュリティ財団が関わるプログラミング教室らしい

https://twitter.com/nukalumix/status/840555060228644864

サイバーセキュリティ財団の主要メンバーは、数年前まで貴金属買い取り(貴金属ありませんかー?って電話かけるやつ)をやってた人たちだって、もう言ってたっけ?
https://twitter.com/5chan_nel (5ch newer account)
514デフォルトの名無しさん
垢版 |
2018/09/10(月) 10:59:14.49ID:wQh8RVrU
test
2018/09/10(月) 12:25:07.36ID:C7zSAi11
クラリスワークスの復活はまだですかね?
516デフォルトの名無しさん
垢版 |
2018/09/10(月) 17:51:11.95ID:OZOyKdgV
盗まれた心が戻ってこないとクラリスはダメなんだよ
517デフォルトの名無しさん
垢版 |
2018/09/11(火) 12:03:31.32ID:zxNN2AtI
NetworkXで作った無向グラフについて「ノードAとノードBをつなぐ経路が存在するかどうか(同じ連結成分にあるかどうか)」を判定する関数はありますか?
経路の長さは必要ありません。
518デフォルトの名無しさん
垢版 |
2018/09/11(火) 13:55:23.54ID:pwo3DQbp
http://tryalnigro.hatenablog.com/entry/2017/11/13/161140
2018/09/11(火) 18:50:52.20ID:BRSYruD+
python 2/3 コンパチのスクリプトを書いてるけど、
素の環境に対応したものでやろうとすると名前の変わったモジュールの呼びだし方とかいろいろ工夫しないとダメなんだな。
__future__使えばだいぶ楽になるけど、使わないと事あるごとにユニコード地獄w
コンソール表示関連は場合分けがどうしても必要で更に面倒くさい。
2018/09/11(火) 18:54:15.18ID:0Qtu/zKE
>>519
ファイトォ*:.。..。.:*・゚(n‘∀‘)η゚・*:.。..。.:*!!!☆
521517
垢版 |
2018/09/12(水) 15:35:34.60ID:R+Q/u4sv
>>518
ありがとうございます!
2018/09/12(水) 20:53:31.66ID:Fp0BM1OM
やっぱPython楽で良いな
必要あって久々にJavaScriptで書いてら
あれ、なんでエラー?
}とか;とか忘れまくり。面倒くせー
2018/09/12(水) 21:41:57.39ID:1sLAkYsI
それは単にPythonの方に慣れてるだけだよ
久々にPython書くと逆に混乱することもあるんだから
2018/09/12(水) 22:08:38.46ID:1ZvyzLzx
;は忘れても困らんだろ
2018/09/12(水) 22:11:41.94ID:a/e6vCTz
文法無視して問題ないプログラミング言語などない
526デフォルトの名無しさん
垢版 |
2018/09/12(水) 22:21:10.08ID:sKdocRjF
なかったら作ればいいじゃないか
527デフォルトの名無しさん
垢版 |
2018/09/12(水) 22:45:38.75ID:yfKtIfo2
バカは日本語の文法すら無視するからな
2018/09/12(水) 22:50:04.43ID:T/3USJ28
if とかwhileの末尾に:があるのが一貫性ないな
529デフォルトの名無しさん
垢版 |
2018/09/12(水) 22:53:27.40ID:yfKtIfo2
;が1つの文の区切り
{}が1つの複文
一番分かりやすい
2018/09/12(水) 23:44:09.22ID:8ci0W4vQ
Javaとかの{}って何重にも重なるとどれとどれが対応しているのかわかりにくいよな

インデント最高
2018/09/12(水) 23:49:57.93ID:NE3pGswO
pep8とかのlintツールとか使ってる?
532デフォルトの名無しさん
垢版 |
2018/09/12(水) 23:51:27.61ID:sKdocRjF
次世代言語が目指すべきは
semantics without syntaxやな
2018/09/12(水) 23:53:39.64ID:pVbQPMMe
VSCode で、Bracket Pair Colorizer という拡張機能を入れれば、

対応したカッコが、同じ色で表示される
534デフォルトの名無しさん
垢版 |
2018/09/12(水) 23:53:47.13ID:yfKtIfo2
空文は
;だけ
わかりやすい
535デフォルトの名無しさん
垢版 |
2018/09/12(水) 23:56:56.14ID:yfKtIfo2
pythonというウンコスクリプトには
空文という概念すらない
2018/09/13(木) 00:00:22.27ID:/6DEARgS
pass
537デフォルトの名無しさん
垢版 |
2018/09/13(木) 00:02:18.61ID:yqnwLH2V
実行しないときに
なんでいちいち意味不明な文書くの?
538デフォルトの名無しさん
垢版 |
2018/09/13(木) 00:09:46.86ID:yqnwLH2V
ウンコスクリプトには致命的な言語としての欠陥がある

つまりそれを回避するために
意味不明なpassという制御が追加されている
2018/09/13(木) 01:28:54.97ID:3jfUP63G
致命的かなぁ。
2018/09/13(木) 03:03:01.76ID:TyIiud+k
ンフフ
2018/09/13(木) 08:44:49.57ID:RBuce5QU
数万個単位のファイルを時間をかけてDLするプログラムで
DL状況を記録したテキストファイルをしょっちゅう更新するのはディスクに悪そうだからと
ダミーファイルを作って、それを消していくことでDL状況を把握する手法のプログラムを作ってたんだけど
そもそもファイルをDLするんだから、 DLリスト-DL済みファイル でDL状況を把握できることに今更気づいてしまった
2018/09/13(木) 08:56:00.59ID:ou865DbU
そもそも大量のファイルをダウンロードしている中でテキスト数文字書き換えることによるディスクへのダメージなど無視していいレベルではないか
2018/09/13(木) 09:33:02.35ID:TEqZYDm7
SQLite使えよ
2018/09/13(木) 11:06:38.16ID:RBuce5QU
>>542
最初のDLリストが9999990バイト(約10MB)あったとして
1件処理して10バイト減ったリストをファイルとして保存すると
9999980バイトの書き込みが発生するだろ
DL1件につき約10MBはなんかディスクに悪そうでしょ
ファイルを一部だけ書き換える処理はよく知らんし、処理もめんどくさくなりそうだし

>>543
SQLiteは一応基本的なことができるレベルだけど
あんまり好きじゃないんだよなぁ
使うしか無いなら使うけど、使わなくて済むなら使いたくない
2018/09/13(木) 12:20:01.06ID:MFUY1dcP
Pythonって未経験だし文法もよく分かってないんですが、
C/C++、C#、Java、TypeScript、COBOL、Perlの経験があれば何とかなりますか?
546デフォルトの名無しさん
垢版 |
2018/09/13(木) 12:24:24.23ID:BkPZA0vF
なんとかならない事なんかない
2018/09/13(木) 13:45:14.81ID:/4sWr7p6
多分、もっといい言語を作れるんじゃないかな?
2018/09/13(木) 17:27:54.21ID:4Jt5EnVe
日本語未経験のマルチリンガルの御仁が、日本語できますかねぇと聞いてるのと同じだなw
549デフォルトの名無しさん
垢版 |
2018/09/13(木) 19:20:28.59ID:6Z3XXp4U
同じだとして何故そこでわろとるのか分からない件
550デフォルトの名無しさん
垢版 |
2018/09/13(木) 19:50:12.01ID:SHti9j2v
>>544
SQLiteはdeleteがクソ遅いから使わない方がいい
ファイルの書き換えならケツから削ってケツだけ書き出すべき
先頭から削ると確かにディスク負荷が馬鹿にならん

再起動を考慮しないなら俺は全部インコアで管理する
再起動を考慮するならダウンロードリストを適当な数で分割してjsonやpickleで管理するわ
2018/09/13(木) 20:17:07.00ID:U1nKZv8x
そもそも最初から全部書き出し直すのが前提?
seekして1バイトだけ書き換えるのではだめなん?
552デフォルトの名無しさん
垢版 |
2018/09/13(木) 20:18:31.29ID:l9KSlvFS
SQLiteはonmemoryで使うもんだ
553デフォルトの名無しさん
垢版 |
2018/09/13(木) 20:24:31.10ID:SHti9j2v
>>551
文字列置換で書き出してもいいかもな
どのみちページ単位での書き出しは避けられん

>>552
SQLiteはmemでもおせーよ
2018/09/13(木) 20:41:29.28ID:TW5jZxyk
pycon jp 今週だっけ?
2018/09/13(木) 21:01:35.44ID:4Jt5EnVe
>>549
初めての言語ならともかく、すでに複数の言語を駆使してる人なら、
釣りじゃない限り、改めてどうかなんてわざわざ聞かないでしょう、普通
2018/09/13(木) 22:43:21.63ID:7EcaHTzm
>>544
ページサイズを4KB とすると、千ページで、4MB

そのうちの、1文字を変えると、その1ページが書き換わる。
または、2ページ以上になる事もある

例えば、1-2-3-4-5-6-7-8 というページがあって、
ページ4 を書き換えた場合、それが2ページになったとすると、

1-2-3-(9-10)-5-6-7-8 のようにつながる
557556
垢版 |
2018/09/13(木) 22:51:27.63ID:7EcaHTzm
1-2-3-(9-10)-5-6-7-8 のようにつながる

ここで、ページ10 に、たった1文字しか入っていなくても、1ページ使う。
1文字でも、4KBでも、1ページ使う

変更のないページには、何も変化はない。
ページの並びが変わるだけ
558デフォルトの名無しさん
垢版 |
2018/09/13(木) 22:52:28.28ID:e5Ezbqnp
>>557
それどこのファイルシステムの話?
559556
垢版 |
2018/09/13(木) 23:03:48.08ID:7EcaHTzm
1-2-3-(9-10)-5-6-7-8 のようにつながる

ページ9, 10 は、1〜8 とは異なる領域に確保されるから、デフラグが起きている状態

シーケンシャルに読み込むと、ページ9, 10 だけは、異なる領域から読み込んで、
つながっているように見せるため

ツールでデフラグを解除すると、これらすべての領域を、異なる連続領域にコピーする。
連続した領域の方が、アクセスが速いから

HDD のアームが、内外内外など、行ったり来たりしないように、
1回のアームの動きで、データを読み込めるように、

HDDの方で、効率的な読み込み方をする
560デフォルトの名無しさん
垢版 |
2018/09/13(木) 23:05:55.21ID:e5Ezbqnp
>>559
それなんてファイルシステム?
561556
垢版 |
2018/09/13(木) 23:07:05.46ID:7EcaHTzm
Linux では、1-2-3-(9-10)-5-6-7-8 のような、ページの並びが見える

OSのすべての機能を学びたいなら、ムック本の
Linuxエンジニア養成読本、第3版、2016

カーネル、起動処理、仮想記憶、
ファイルシステム、シェルスクリプトなど
562デフォルトの名無しさん
垢版 |
2018/09/13(木) 23:08:52.06ID:e5Ezbqnp
>>561
ext4でもxfsでも同じ?
563556
垢版 |
2018/09/13(木) 23:09:23.07ID:7EcaHTzm
どのファイルシステムにも、デフラグツールがあるから、

たぶん、すべてのファイルシステムで同じだろ
564デフォルトの名無しさん
垢版 |
2018/09/13(木) 23:10:40.98ID:e5Ezbqnp
>>563
>>561のようなページの並びにするにはどんなwriteシステムコールを出せば確認できる?
565デフォルトの名無しさん
垢版 |
2018/09/13(木) 23:13:26.04ID:6Z3XXp4U
こうゆう見当外れな議論ごっこも時間が経てば良い黒歴史になるもんやからな
566556
垢版 |
2018/09/13(木) 23:15:45.68ID:7EcaHTzm
例えば、1-2-3-4-5-6-7-8 のように、8ページを読み込んだとする

ここで、ページ4を更新したら、ページ4に、更新した印のdirty bit を付ける。
他のページには、dirty bit が付いていないから、更新されていない事がわかる

だから、1-2-3-(9-10)-5-6-7-8 のように、ページの並びだけを変えて、
ページ9, 10以外は、何も変化がない
567556
垢版 |
2018/09/13(木) 23:24:36.66ID:7EcaHTzm
>>564
ページ4を更新する時に、バイト数が増えれば、
1ページだけの更新ではできないから、2ページの更新になる

それで、1-2-3-(9-10)-5-6-7-8 のようになる

だから、ページ10には、1文字しか入っていない事もある

その場合、4KB近く使われていない領域があるけど、
そこに、ページ5〜8 の内容をずらして更新したりしない

ページ1〜3、5〜8 には、dirty bit が付いていないから、更新されない
568デフォルトの名無しさん
垢版 |
2018/09/13(木) 23:27:43.30ID:e5Ezbqnp
>>567
ブロックマップを分かってなさそうだ
あとデフラグって言葉は違う
もっと勉強した方が良い
569デフォルトの名無しさん
垢版 |
2018/09/13(木) 23:54:36.62ID:/6DEARgS
10MB程度と予測できるならメモリー上でやれよ
めんどくさいからリストでさ
んで、100回おきにHDDに書き込む
finallyでHDDに書き込む
570556
垢版 |
2018/09/13(木) 23:59:59.43ID:7EcaHTzm
>>568
ファイルシステムのBlock bitmap は、dirty bit の有無じゃなかったっけ?

ちょっと今、手元に本がないから、わからないけど
2018/09/14(金) 01:54:16.61ID:eqs6pM6Z
ちゅーかディスクへの書き込みで、ディスクへの負担とか考えとったら、あんた禿げるで。
OSや他のアプリはもっと頻繁に読み書きしてるよ。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況