とりあえず mycli と aws-shell のスクリーンキャストを見てください。 prompt_toolkit はこのようなリッチコンソールアプリを作るためのライブラリです。 Windows でも動きます。 Jupyter (ipython notebook) を切り離した、コンソール版の ipython も次のメジャーバージョンでは readline ベースから prompt_toolkit ベースに作りなおされています。 ipython 以外にも ptpython というシェルもあり、 ipython の各種 magic が不要な場合はこちらで十分でしょう。 https://github.com/jonathanslenders/python-prompt-toolkit#projects-using-prompt-toolkit には、他にも prompt_toolkit を採用
iOS用のアプリは通常、開発アカウントを取得し、Macを使って開発します。 開発アカウントを取得するほどではないが、iOSデバイス上で何かやりたい処理がある、という人はいるでしょう。 あるいは、プログラム好きな人なら率先してiOSデバイス上でプログラミングをしたいと思うのではないでしょうか。 そうしたニーズに存分にこたえることができる、iOSデバイス上で動作する統合開発環境がPythonista 3です。 2016年9月21日に開催されたPyCon JP 2016で @equal_001 さんがPythonistaについて発表されていたのでご紹介。 Python支持者のことをPythonistaといいますが、アプリ名はそこから取ったんでしょうね。 正真正銘のPythonが内蔵されていて、ローカルで動きます。 [参考] Kazuhiro AbeさんはTwitterを使っています: 「インタプ
Docker Image of Python with OpenCV 3.0 for Heroku - すぎゃーんメモ の続き的なかんじで。 OpenCVでよく使われるObject Detection機能で、画像から顔を検出するAPIを作ってみた。 Heroku app https://face-detector.herokuapp.com/ Github repository https://github.com/sugyan/face-detector 顔検出 基礎 一番簡単なオブジェクト検出の手法が、Haar-like特徴に基づくカスケード型分類器(Haar Feature-based Cascade Classifiers)というのを用いるやつ。 OpenCV: Face Detection using Haar Cascades OpenCVには顔や目などに関して学習済みのデータ
この記事はなんなの 「センター試験程度であれば、数式と文章を愚直にプログラムに落としこむことさえできれば、昨今のツールを用いて、何も閃かずとも機械的に問題を解くことが出来る」ということの主張 科学計算ライブラリ(特にSympy)の布教 将来、働き先がなくなったとき、「私、私こういうことができるんです!!」って言えばどこかが拾ってくれないかなあ、という夢 使用するもの Python (3系) Scipy.org に載っている科学計算ライブラリ全て(タグが足りない!!) 共に、2015年6月現時点での最新版を使用します(特に、Scipyは今年1月に実装された最新版の機能を使用するので注意してください)。 数々のライブラリを一つ一つインストールするのはすごく面倒です。面倒なので、有名どころを固めたパッケージのようなものが複数存在します。 個人的にはいつもAnacondaを使ってまとめてインストー
数日前、pandas を利用して地理情報をプロットするという非常によいエントリが翻訳されていた。 postd.cc 上のエントリ、前処理が手間に見えるが pd.read_html や .str アクセサを使えばもっと簡単に書けると思う、、、がそれは本題でない。 pandas で地理情報を扱う場合、geopandas という拡張パッケージを利用すると便利なため、その使い方を書きたい。また、処理を Python で完結させるため、QGIS ではなく Bokeh でプロットしたい。 geopandas のインストール pip で。 $ pip install geopandas geopy このエントリでは依存パッケージである shapely、geopy の機能も利用する。shapely は自動的にインストールされるはずだが、geopy については上のように別途インストールが必要。 地理情報の読
はてなブログに移行して最初の記事はやはりPythonネタにしました。 はてなブログいいですね。デザインの編集がやりやすくなったのと、Markdownで書けるのが素晴らしいです。 PyCon 2013の動画を見ていたら、素晴らしい"Transforming Code into Beautiful, Idiomatic Python"という発表を見つけたのでそのまとめです。 今どきのPythonコードのベターな書き方を紹介しています。 Transforming Code into Beautiful, Idiomatic Python ... スライドはこちらにありました 結構長くなってしまったので、知ってる項目は読み飛ばしてもらえばと思います。 ループの基本 整数のループ まずは基本のループ。 Cのfor int i=0; i<6; i++をPythonで単純に書くとこうなります。 for
はじめに Nim (旧称: Nimrod) というVimに似た名称のPython風構文な静的型付言語があります。 先日Twitterで存在を知り、少し触ってみました *1。 書きやすい上に実行速度がとても速く(単純な処理でgo, rustより早くC並)、非常に気に入ったので簡単にインストール方法などを紹介したいと思います。 注意 筆者はPythonくらいしかよくわからないのでPython (version >= 3.0) 基準です 試した環境はUbuntu 14.04 (64bit)です Nimの特徴 主に公式ページの記述から、主観で特徴を列挙します。 言語の特徴 静的型付 型推論あり インデント構文、行末セミコロンなし ガベージコレクタあり(高速らしい) Low level処理も記述可能(メモリ操作可能) 高度な型システム(インターフェイス、ジェネリクスなど) ユーザ定義演算子、演算子オ
前回からの続き。 明治ミルクチョコーレートパズルの解をすべて探す - ザリガニが見ていた...。 ペントミノの解を求めるプログラム高速化 - ザリガニが見ていた...。 ペントミノパズルを解くPythonコードは、順調に高速化の道を歩んできた。 3時間以上 → 50分 → 20分 → 3分。 ところで、現在はnumpyにほとんど依存しないコードになっている。ならば、他のプログラミング言語でも同じアルゴリズムでペントミノパズルを解けるはず。ふと、使い慣れているRubyで書いてみたらどうなるのだろう?と思った。やってみた。 Rubyで解く 完全にPython脳になっていたので、endが必要な書き方に激しく無駄を感じてしまった。 いくつかのエラーに悩まされながら、どうにか以下のRubyコードを完成させた。 実行してみると... # coding: utf-8 BROW, BCOL = 10, 6
前回までにペントミノの解をすべて、求められるようになった。実行してみると、完了するまでに20分くらいかかる。当初に比べればこれでもかなり高速化したのだけど、まだまだ高速化の余地はありそう。チャレンジしてみる。 最初は、6行10列のボードに敷き詰めようとして、3時間15分経過しても800解しか出力できなかった。 つぎに、ボードの縦横を入れ替えて10行6列にし、50分で9356解を出力した。 現状は、重複解を排除するように変更し、20分で2339解を出力する。 $ time python pentomino.py ...中略... 解合計 2339 操作数 10385817 real 18m56.501s user 18m47.271s sys 0m1.475s 現状のコード # coding: utf-8 import numpy as np # すべてピース形状をPieceオブジェクトの配
今年の正月明けは、明治ミルクチョコレートパズルの問題に夢中になった...。 正月の酔っ払い物理学者が数学者の皮を被った天使に出会うお話 | カメリオ開発者ブログ このパズルはチョコレートシリーズの中では甘めらしいのだが、各ピースがチョコレートで出来ている訳ではなく、食べられない。甘めというのは難易度のこと。これはABS樹脂で作られたチョコレート風デザインのパズルなのだ。写真で見ると、思わず食べてみたい衝動にかられる。 1ピースは正方形5個の組み合わせで構成される。 その組み合わせは全部で12通りある。よって全部で12ピースある。 各ピースにはアルファベットをイメージした名前が付けられている。 この12ピースをうまく組み合わせて、6×10(=正方形60個)の箱に収めるのだ。 これは紛れもないペントミノ(pentomino)パズルのなのだ!このペントミノパズルをコンピューターに解かせる、という
ブログの記事は reST (reStructuredText) で書いて HTML に変換していますが、 パソコンを買い替えたので環境を移行しなければなりません。 ということで、メモを書いておきます。 docutils のインストール まずは Docutils モジュールをインストールします。 Sphinx をインストールすれば依存関係でインストールされていますが、 そうでない場合は個別にインストールします。 $ site=blog-site $ virtualenv --distribute $site $ cd $site $ . bin/activate $ pip install docutils docutils には rst から始まる Python スクリプトがいくつか付属しています。 $ ls bin/rst*.py bin/rst2html.py bin/rst2late
すごい合同勉強会2014 in 広島でセッションしたので内容を公開しておく。 今回は「私がモナドの内包表記という名前を知った時の感覚を伝えよう」というのが目的でした。 さりげなく「私がモナドに感じている効能を伝える」というのもしているのですが、そこは本当にさりげなく。 内包表記。その意味を知らずに5年前ぐらいにpythonで利用していて、forやif文字通りにうけとっており、その動作を正しく理解できてないときがありました。 現在とその間にHaskellを学び、その5年前の自分に内包表記を伝えるにはという観点で話を進めました。 まず、リストの内包表記ですが、リストを生成を簡単にしてくれる機能です。 内包表記は、どうやら数学の集合の記法である内包的記法に由来するそうで、「関数プログラミング入門 ―Haskellで学ぶ原理と技法―」か何かで読んだ記憶があります。 その対になる記法として外延的記法
Webアプリ全盛の現在とあっても、業務では未だにExcelが多く使われています。その結果としてVBAが活躍しており、メンテナンスが難しかったり、コピペされるコードが量産されていたりします。VBAがダメという訳ではないのですが、触りたくないと考えるプログラマは多いのではないでしょうか。 もっと自分が使い慣れたプログラミング言語でExcelを扱いたいと考える人に使ってみていただきたいのがxlwingsです。PythonとExcelで双方向の操作が可能になります。 xlwingsの使い方 デモ。ExcelからPythonを呼び出します。 xlwingsはPythonからExcelのデータを読み込んだり、ExcelからPythonをコールできます。その結果、PythonからExcelにデータを追加したり、検索結果を表示させることも可能です。VBAの代わりに使うことが可能です。 Pythonであれば
概要 この記事は自然言語処理という分野の最新手法word2vec を利用して誰でも遊べるようにするための手順を説明するものです。 word2vecを利用すると意味の計算が実現できます。 例えば"king"から"man"を引いて"woman"を足すと"queen"が出てきたり、 "東京"から"日本"を引いて"フランス"を足すと"パリ"が出てくるという面白い手法です。 自然言語処理とは人間が日常的に用いる自然言語をコンピュータに処理させ、 翻訳や要約、文字入力支援や質問応答システムを作るなどに活用されている分野です。 自然言語処理と言うと耳慣れない言葉かもしれませんが、 実は検索や推薦などで私たちが日常的に利用しているなじみ深い技術でもあります。 自然言語処理の適用範囲や要素技術は幅広いのですが、 その中でもword2vecの特色は、 冒頭でも挙げたように「意味の計算」が出来ることです。 これ
Contents¶ PyPI: https://pypi.python.org/pypi/hy Source: https://github.com/hylang/hy Discussions: https://github.com/hylang/hy/discussions Stack Overflow: The [hy] tag Hy is a Lisp dialect that's embedded in Python. Since Hy transforms its Lisp code into Python abstract syntax tree (AST) objects, you have the whole beautiful world of Python at your fingertips, in Lisp form. To install the latest r
http://patshaughnessy.net/2013/10/24/visualizing-garbage-collection-in-ruby-and-python Pat Shaughnessyが、ブタペストで開催されたRUPY2013でのプレゼンの前半を自らのブログで紹介しています。 ガベージコレクタは、「ゴミを集める」という行為だけでなく、「新しいオブジェクトのためにメモリをあてがう。」「不要なオブジェクトを見つける」「不要なオブジェクトからメモリを取り戻す。」という、人間の心臓が血液を浄化するような働きをしている。 この簡単なコードサンプルを見ると、RubyとPythonの記述はよく似ているが、それぞれの言語の内部でのインプリの仕組みは違う。 1) Rubyのメモリ Rubyは、コードが実行される前に、数千のオブジェクトを先につくり、それをリンクされたfree listに置
ブロック図生成ツール blockdiagは、プレインテキストからブロック図・シーケンス図・アクティビティ図を生成できる非常にすばらしいツールです。 しかし、ときおりやむおえない事情でExcel方眼紙を作らざるをえないときがあります。 そこで、Excel方眼紙を生成できるようにするプラグインを作りました。pypiに登録してあるのでeasy_installで簡単にインストールできます。 ※ COMを利用しているため、ExcelがインストールされたWindowsでしか使えません。 前提 Windows 8 Excel 2010/2013 blockdiag 1.2.1以降 http://sourceforge.net/projects/pywin32/ Python for Windows extensions インストール方法 easy_install blockdiag easy_insta
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く