Python

【逃げ恥】恋ダンスでただガッキーだけを見ていたかったのでディープラーニングする(後編)

taka-say.hateblo.jp 上記記事の続きです。 復習は面倒だが役に立つ 前回の記事では、ガッキーの顔とそうでないものの二値分類を行うモデルを作成し、実際に動画への適用を試みました。 残念ながら上手くいきませんでした。 詳細は前編をどうぞ。 忍耐は辛い…

【逃げ恥】恋ダンスでただガッキーだけを見ていたかったのでディープラーニングする(前編)

ガッキー視聴を毎週の楽しみにしている方も多いのではないでしょうか。 かくいう私もその一人です。 現代社会の荒波に揉まれては心が荒む日々。 灼熱地獄の砂漠に与えられた一縷の望み、オアシス。 私にとって、恋ダンスを踊るガッキーとはそのような存在と…

【Django REST framework】viewの中で使用するserializerを変更する

ModelViewSetなんかを使用していると、それぞれのアクション毎にserializerを変更したいことが多々あると思います。 日本語情報が少なくてベストプラクティスなのかどうかは疑わしいですが、クラスベースviewの中でserializerを変更する方法をとりあえずメモ…

【Python3】文字列変数をraw文字列で出力する

変数の中身のエスケープシーケンスは自動的に解釈されてしまいます。 例えば下記のようになります。 >>> s = '1\n2\n3\n' >>> print(s) 1 2 3 変数に対してPythonのraw string記法は使用できません。 そこでreprを使用すると、 >>> print(repr(s)) '1\n2\n3\…

【Python】日本語Wikipediaのダンプデータから本文を抽出する

日本語Wikipediaのダンプデータ中の本文を利用したい。 ただ、単純にパースするだけではWiki記法の記号等が邪魔である。 というわけでWikipedia Extractorを利用して本文だけテキストとして抽出します。 Wikipedia Extractorの他にもパースするためのライブ…

【Python】matplotlib.pyplotインポート時にPython is not installed as a frameworkのRuntimeError

実践機械学習システムで手を動かしていたところ、import matplotlib.pyplot実行時に下記のようなエラーに遭遇したため解決策のメモ。 RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly …

【Python3】大文字小文字に関わらず文章中に指定したワードがあるか調べる

Pythonの正規表現を使えば簡単に調べることができます。 re.searchの第三引数にre.IGNORECASEを指定してあげればOK。 import re word = 'Python' description = 'pythonが恋しい' if re.search(word, description, re.IGNORECASE): # 実行したい処理 PYthon…

【Python3】xlsxをcsvに変換する【xlsx2csv】

大量かつ大きめxlsxファイルを同名のままcsvに変換したかったのですが、良い方法やソフトが見つからなかったため自力で行いました。 多分もっとスマートなやり方があるんだろうなと思いつつ、とりあえずメモ。 環境 Mac OSX Yosemite zsh Python3 準備 pipで…

【Python3】rdflibの簡単なメモ

日本語Wikipediaオントロジー 上記日本語WikipediaオントロジーのデータをPythonから弄くり回したかったのでrdflibを使いました。 最終的にはファイルサイズが大きすぎて直接的な使用を断念したのですが……。 データの検索部分のみ備忘録的に軽くメモ。 rdfへ…

【Python3】データがstrではなくbytesで返ってくる問題【MySQL】

PyMySQL3を使ってDB内のデータ取得をしたところ、varchar型に設定されたカラムのデータがbytes型で返ってきてしまう問題に遭遇。 後々のためメモ。 環境 Python 3.4.3 MySQL 5.6 PyMySQL3 解決策 PyMySQL3への接続とクエリは以下のような平凡なものである。 …

【Python3】HTMLのエスケープされた記号を元に戻す

環境 Python 3.4.3 方法 xml.sax.saxutilsモジュールのunescapeメソッドを使えばOK。 from xml.sax.saxutils import unescape text = '&amp; &lt; &gt;' print(unescape(text)) # => '& < >' 第二引数にdictを与えると、独自辞書の定義も可能とのこと。 from…

【Python3】sqlite3.ProgrammingError: Incorrect number of bindings supplied【SQLite3】

また引っかかりそうなのでメモ。 環境 Python 3.4.3 sqlite3 解決策 executeメソッドでSQLを実行しようとしたところ、 sqlite3.ProgrammingError: Incorrect number of bindings supplied. と怒られてしまいました。 原因は単純で、executeメソッドの第二引…

site-packagesの場所を確認する

対話型シェルを起動し下記を実行。 >>> import site; site.getsitepackages() ワンライナーで完。

【MeCab】Python3で解析時にbuiltins.UnicodeDecodeError【Flask】

Twitterから取得したデータをMeCabで処理し、Flaskを用いたWebアプリケーション上で表示しようとしたところ、下記のようなエラーが出現。 builtins.UnicodeDecodeError UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position 0: invalid st…

【Bottle】@viewデコレータを自前で定義する【Jinja2】

通常Bottleを使用する場合は、使用するテンプレートに併せて必要なメソッドやデコレータをインポートして用いることで、viewテンプレートの描画を非常に簡単に行うことが出来ます。 例えば、Jinja2テンプレートを使用し、メソッドでviewテンプレートの描画を…

【Jinja2】特別な定数は小文字を使う

Noneってなんだよと度々怒られたのでメモ。 Jinja2ではPythonのTrue,False,Noneは小文字で表記される。 # × {% if some_func() is None %} # ◯ {% if some_func() is none %} いい加減にやってると結構難しい……。 参考 Jinja2 ドキュメント日本語訳

【Python】returnを記述しなかった関数が返す値

pythonコードを書いている際に、returnを書いていない(返り値の指定がない)関数が何を返しているのかが気になったためメモ。 結果からいうとNoneを返している。 def foo(): pass foo() is None # True 明示的にreturnを書いた場合も同様にNoneを返している…

【Bottle】view用templateの探索パスを追加する

Bottleで予め設定されたviewのtemplate探索用パスは['./', './views/']のみ。 自分でカスタマイズしたかったので追加。 適当な場所で、 TEMPLATE_PATH.insert(0, './some/path/') をすればOK。 参考 Template Search-Path Workaround

【Python3】Queueなんてモジュールはねえよ!

環境 Python 3.4.3 問題 Pythonでキュー的な実装をしたかったため import Queue q = Queue.Queue() としたところ ImportError: No module named 'Queue' と言われ撃沈。 解決 公式ドキュメントによると、どうもPython3では旧来のQueueモジュールの名前がqueu…

Pythonはじめました

前々から使ってみたいとは思っていたのですが、この度少し生活に隙が出来たため諸々のプログラミング系書籍と一緒に入門書を購入して来ました。Pythonチュートリアル 第2版作者: Guido van Rossum,鴨澤眞夫出版社/メーカー: オライリージャパン発売日: 2010/…