静かなる名辞

pythonとプログラミングのこと

雑記

オブジェクト指向の教育にPythonが向いていると思うこれだけの理由

はじめに オブジェクト指向は今となっては常識である。常識であるがゆえに、いかに初心者にわかりやすく教えるかが課題になる。 世の中でオブジェクト指向の「教材」として使われている言語は、 Java Ruby の二択くらいだと思う。が、あえて僕はPythonを推し…

VMware Playerでキャッシュを削除して仮想ディスクの容量を空ける(linux)

VMware Playerはホストとゲスト間で、ドラッグ・アンド・ドロップやコピ・アンド・ペーストによってファイルを移動できる。 便利な機能なので頻繁に使ってしまうが、これは腹立たしいことにゲストの仮想ディスク上にキャッシュを生成する。そしてこのキャッ…

有意水準5%の論文が100本あったら

この記事は思いついたままに書いたポエム。 有意水準5%とは、その判断(主張)の妥当性が95%である、ということを意味する。よって、有意水準5%で検定したら、100回に5回は第1種の過誤を犯す。 有意水準5%の論文が100本あったら、(いちおうすべての論文が正…

【python】# coding: utf-8はもうやめる

pythonのプログラムは先頭行(あるいはシェバンの次の二行目)でファイルの文字コードを指定することができます。エンコーディング宣言といいます。 こんなのとか # coding: UTF-8 こういうのもありますね。これはemacsに自動認識させるための書式らしい*1。…

ブログ記事のアクセス数はパレートの法則に従うのか? 分析してみた

はじめに このブログは2016年末に立ち上げて、3ヶ月くらい書いた後一年ほど放置していたのだが、今年の1月に性懲りもなくまた書き始めた。 直接の動機は放置していた間に意外とアクセス数が伸びていたことで、具体的な数字を出すのは控えるが、帰ってきた時…

【python】気持ち悪いリスト内包表記のサンプルたち

最終更新:2018-4-21 この記事は思いつく度に加筆していこうと思う。 二回評価されるのを避けたかった numpy配列がなんだ!俺がやってやる! forのよさを殺していくスタイル 2018/3/30 追記 リスト内包表記でファイル出力 無限ループ リスト内包表記で走査し…

【python】一定の確率で違う選択をする

※注意! この記事の内容も間違ってはいませんが、もっと良さそうな方法を後から見つけました。 こちらの記事も参照してください。【python】複数の選択肢から確率で選ぶ - 静かなる名辞 本文 タイトル通りのものが強化学習の実装で必要になった。 の確率で処…

はてなブログでうっかり付けちゃったカテゴリを外す方法

やったこと はてなブログで、記事の管理画面でカテゴリを整理してたら、うっかり間違ってカテゴリを貼ってしまった。チェックボックスを外し忘れたまま操作すると簡単にそういうことが起こる。 カテゴリを記事の管理画面から外す方法を探したが、どうやって…

なぜpython使いは単純なfor文より醜悪なリスト内包表記を好むのか

煽りっぽいタイトルだが、この記事は真剣である。リスト内包表記にはpython哲学の本質に関わる問題が潜んでいる。 python使いはリスト内包表記を好む。他の言語の使用者なら「for文で書きゃ良いのに」と思うような処理を、リスト内包表記で書くことを好む。 …

wifiアダプタのないlinux PCを無線LANに繋ぐ

先日新しくPCを組みましたが、家庭の事情で無線LANしか繋げない状況でした(無線LANルータとか全部1階にあるのに2階にPC置かざるを得ない、みたいな状況だと思いねぇ)。しかし、使うマザーには無線機能などありません。こういうとき、windowsはどうにでもな…

xubuntuをcliモードで起動する

わかるようなわからないような感じだったのでメモ。 まず、基本的なやり方としては下ので良い。 Ubuntu日本語フォーラム / CUIでの起動、ログインについて $ sudo systemctl set-default multi-user.target ただし、このコマンドを打ってrebootしてみたら起…

ryzenマシン作りました

ryzenのマシンを作りました。1700Xにトマホークという特に面白みのない構成で組んでみました。 ハード自体は大きな問題もなく立ち上がりましたが、OSのインストールでドはまりしました。そもそも、今回はwindowsとlinuxのデュアルブートにする予定でした。先…

【python】pythonでボゴソートしてみる

みんな大好きボゴソート。愚直に実装するならそんなに面倒なことはない。 import random def bogo(lst): while True: random.shuffle(lst) xb = lst[0] flag = True for x in lst[1:]: if xb > x: flag = False break xb = x if flag: return None 色々イケ…

昨今のAI議論の違和感と、僕のAIに対するスタンス

アルファ碁がイ・セドルに勝った頃からか、一般の界隈でAIに関する議論が盛り上がるようになってきた。それも、どちらかといえばネガティブな議論が多い。 「AIが人間の職を奪う」とか、「経済に悪影響を及ぼす」とか、なんとか。 科学者やアナリストも便乗…

【python】numpyの型の違いによる計算速度差を見てみる

前回の記事で「なんとなくnp.float32が速い気がする」とか書いたので、実際に測ってみる。 予め断っておくと、計算速度なんて環境によって違うし、どの型が速いかもCPUのアーキテクチャに依存する。numpyはバリバリにSIMD命令を使って最適化する(と、思う)…

おすすめのテキストエディタ

テキストエディタと言っても、vimとかemacs、秀丸だのサクラだの、Sublime TextだのAtomだのの話をしたいのではない。そりゃ、真面目にソースコードだの文章だのを編集するなら大掛かりなエディタだって必要かもしれないけど、普段ちょっとしたテキストファ…