PyPyはPythonで実装されたPythonインタプリタ。PyPy 1.2ではPython 2.5と互換性があり、またPythonの標準ライブラリモジュールのほとんどに対応する。また、信頼できないコードを安全に実行する「サンドボックス」機能や、スタックレスモードでの実行が可能な点なども特徴。 PyPy 1.2最大の特徴はJITコンパイラが搭載された点で、これによりCで実装されたPythonの標準実装よりも高速にPythonプログラムを動かせるという。また、さまざまな最適化機能も実装されており、大容量のメモリを使用するプログラムの場合メモリ使用量の削減も期待できるという。 なお、JITコンパイラは安定しており、クラッシュすることもないものの、対応プラットフォームがx86(32ビット)に限定されており、またコードのコンパイル時に非常に大量のメモリを使用することがあることから、まだプロダクトと
ちょっと前の記事だけどこんなの見つけた。 reStructuredText のヘッダを書く - methaneのブログ ふむふむなるほど。 ただ試しに使ってみたら cp932 に変換できないみたいなエラーが出て、この程度なら Vim スクリプトだけで書けそうなので書き直してみた。 変更点 ftplugin 化 ftplugin/rst_header.vim に置く。 これにより filetype が rst(reStructuredText の filetype 名)のファイル以外では効かなくなる。 書き直し機能 上下の行がヘッダ用の文字のみで構成されていた場合、先にその行を消す。これによりタイトルを変更した時に長さを再調整できる。また、ヘッダレベルを変えることも可能。 便利なのかは知らん。 一応設定できる ヘッダにどの文字を使うかは g:rst_header_chars で変更可能。更に
Bloggerの原稿をいちいち手で書くのが面倒だったので(特にリストとかpreとか)、Sphinxを使ってBloggerの原稿を書く拡張を作ってみることにしました。 参考にしたページはこちら。 http://sphinx.shibu.jp/ ■サンプルとダウンロード githubにアップしてみましたので、こちらからご利用いただけます。 http://github.com/akisute/sphinx_rst2blogger 実際に変換させてみたサンプルをこちらに用意してみました。 http://gist.github.com/317478 ■設定 完全に私の個人使用向けになっているので、そのままではたぶん使いにくいと思います。まずはMakefileの以下の部分をご自身の環境に合わせて書き換えてください。blogger: $(SPHINXBUILD) -b blogger $(ALLSPHI
この記事読んで以来、ずっとTitaniumをいじっていました Ruby,Python,PHP,JavaScriptでマルチプラットフォームなデスクトップアプリを簡単に作成する Appcelerator Titanium Desktop - 仙台 Rails Vim JavaScript社長 Titanium Desktopの何がすごいって、Webkitベースなのでhtml/css/javascriptのweb標準技術が使えて、さらにはKrollというライブラリがそれぞれの言語の仲立ちをし、名前空間を共有しそれぞれのライブラリを呼び出せるそうな。なにそれきもい。 僕は完全に が使えるwebkitとしか見てなくて、GUIライブラリが貧弱なPythonだと、十分有力な選択肢に入ると思われます。一度作ったものはクロスブラウザで使えるし。 簡単なTwitterクライアントを作ってみた あっさりできま
AndroidにASE (Android Scripting Environment)を入れてから楽しくてちょくちょくいじっているのだけど、Pythonに初めからtwitterモジュールが入っていることに気が付いたので使ってみた。 普段はAndroid端末(HT-03A)のTwitterクライアントとしてTwidroidを使っているのだけど、最初の立ち上げでタイムラインを取得しに行くのでちょっとだけ待たされる。あまり気にはならないけど、つぶやきをサクっと投稿したいだけならタイムライン取得は無駄なので、投稿専用のスクリプトを組んでみることにした。以下がそのコードだ。起動するとダイアログが出るのでつぶやきを書いて送信するだけだ。送信が完了したら画面に投稿したつぶやきが表示されて終了する。 # -*- coding: utf-8 -*- import android, twitter droid
ASE (Android Scripting Environment)を使って簡単にPython, Perl, JRuby, Lua, BeanShell, JavaScript (Rhino), それにシェル(将来的にはさらにたくさんのスクリプト言語)をAndroid上で実行できるのはご存じだろうか。ASEのインストールからスクリプトの作成、実行まで、すべてAndroid単体でできる。もちろん、PC上でコーディングしたい場合は、USBで繋げてPC上のスクリプトをAndroid端末上で実行することもできるし、PC上のコードをAndroid端末にコピーすることもコマンド一発だ。さらに、各種センサー、位置情報、SMS、テキストの読み上げなどもスクリプト上で操作できるというのだからこれを使わない手はない。 そこで、試しにPythonスクリプトを書いてみた。Android端末のGPS機能で緯度経度
ソフトウェアを公開するのが面白くてたまらない。ソフトウェアを作ってはフリーソフトとして配布してきた岡野さんは「自分が作ったものに反応があるのが、うれしい」と無邪気に笑う。その体験が原点となり、ものづくりが楽しくて仕方がないようだ。作っては公開というのが彼のやり方だが、若きエンジニアにとってはそれくらいがちょうどいいのかもしれない。(取材・文=編集部)2010/02/22 掲載 岡野真也(おかのしんや) 1985年1月30日生 25歳 株式会社ビープラウド 【略歴】 2007年3月 北見工業大学卒業 2008年8月 株式会社ビープラウド入社 ――エンジニアになったきっかけのようなことはありますか? 岡野 15歳のときに友達の影響からHTMLでホームページを作ったのがきっかけになりますね。それ以前にも、小さい頃から父が趣味でN88-BASICをやっていたので、プログラミングに触れる機会はあっ
古いエントリーなのですが、まだ時折検索エンジン経由?でいらっしゃる方がいるみたいなので追記 Titanium Desktopは今はTideSDKと変わってオープンソースプロジェクトになっています。 いいたい事を先に。 Ruby,Python,PHP,JavaScriptやってる人でデスクトップアプリ作成に興味ある人は Appcelerator Titanium Desktop さわってみるといいと思います。OS X, Windows,Linuxとマルチプラットフォームなデスクトップアプリをhtml,JavaScript,Ruby,Python等の慣れ親しんだ技術で簡単に作成、公開することができます。 予想以上にブクマされてるみたいなので、Titanium Desktopの特徴を箇条書きですが追加しておきます。 一言で言えばJavaScriptで記述するAdobe AIRのようなRIAフレー
"DAMON BLOGONS" の、 "The Perfect Django Settings File" という記事で紹介されていた Django の設定 (settings.py) が面白かったので、私が利用しているものと併せて紹介したいと思います。 環境による DEBUG の切り分け 開発環境では "DEBUG = True" と書くと幸せになれます。Django のデバッガーは強力です。ただし、本番環境にそのままデプロイしてしまうと・・・。デプロイを楽にするためにも、失敗を防ぐためにも自動的に切り分けるのが望ましいですよね。Damon 氏は以下のようなコードで切り分けているようです。 # Set DEBUG = True if on the production server if socket.gethostname() == 'your.domain.com': DEBUG =
ここ2〜3日、InfoPileのパフォーマンスチューニングをしており、ちょっともたつきを感じるような部分をほとんど解消することができた。InfoPileで使用した高速化テクニックの中で効果が大きく、よくつかわれそうなものを紹介しよう。尚、以下のスクリプトはPython 2.6.4で実行した。 listよりtupleを使う 可変長である必要のないシーケンスは、できるだけlistではなくtupleを使って構築しよう。listの生成/解放コストは意外と大きいのだ。 import time def run1(): for i in xrange(1000000): [i, i+1, i+2, i+3, i+4, i+5, i+6, i+7, i+8] def run2(): for i in xrange(1000000): (i, i+1, i+2, i+3, i+4, i+5, i+6, i+
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー PythonにはPEP8という公式のコーディングスタイルがあります。このスタイルに従うことで,Pythonの思想「誰にとっても明確な手法が,一つだけあることが好ましい(There should be one-- and preferably only one -- obvious way to do it)」に沿った,見やすいコードを書くことが出来ます。 読んでみると分かるのですが,変数や関数,クラスなどの命名規則から,どこに空白を入れろとか改行を入れろとか,かなり細かく記述があります。それぞれの規則にはちゃんと理由があって,出来る限り守った方がコードが見やすくなるのは確かなのですが,
python 3.x 系及び ruby 1.9.x 系を利用したい。 とはいっても、現行のバージョン (python 2.x 系及び ruby 1.8.x 系) も必要である。 そこで、これら両方が共存できる環境を構築した。 Mac OS X の場合は非常に簡単である。 あらかじめ MacPorts で複数入れておいて、port activate/deactivate すれば必要なバージョンに切り替えられる。 Ubuntu や Debian GNU/Linux では、基本的には以下の手順で良い。 ビルド時の ./configure で --prefix=/opt/hoge のようにディレクトリを指定する。 update-alternatives にビルドしたパスを登録することで /usr/bin の下にシンボリックが作成され、複数のバージョンを切り替えられるようになる。 ただし、自分の場合
TwitterのBasic認証APIは6月で廃止される予定なのですが、OAuthという認証方法はブラウザを起動してユーザに認証して貰わなければなりません。一見flickrアプリケーションの様な認証方法を想定しますが、OAuthはflickr認証の様にサーバから貰ったトークンをブラウザから渡して認証させる様な物ではありません。 今回OAuthの問題を解決すべくOAuthを拡張した認証方式であるxAuthが取り入れられました。 詳しくはAPIドキュメントか以下のサイトが分かりやすいかと思います。 s-take Blog.: Twitterによる簡易版OAuth: "xAuth" 従来のOAuth認証ではまずアプリケーション(OAuthコンシューマ)がTwitterに接続してRequest Tokenを取得し、認証画面を開いてRequest Tokenを承認させ、承認されたRequest Tok
Google App Engine SDK for Python には、単体テスト用に各サービスのスタブが提供されています。このスタブと unittest を使えば、ローカル環境で GAE 用アプリの単体テストが可能です。 GAE/Python で unittest を使って、単体テストを行うサンプルは次の通り。 #!/usr/bin/env python #encoding: utf-8 import os import sys # 環境設定 # これをしないと GAE のモジュールをインポートできない。 # テスト対象のクラスも同様。 # ここを自分の環境に合わせて書き変えます GAE_HOME = 'Google App Engine SDK ディレクトリのパス' PROJECT_HOME = 'アプリケーションのルートディレクトリのパス' # テストで使う GAE のモジュールのパ
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー CUIベースのビジュアルデバッガpudbを紹介したときは「Pythonの達人はデバッガを使わない」というようなことを書いたけど,僕は最近pudbを使い始めた。ただ,日常的に使っているわけではなく,特定の場面でだけ使うようになった。開発中,テストがfailしたり例外が出たりしたときだけ,pudbを使っている。 最近見つけたnose-pudbはとても便利なツールだ。Pythonのテストユーティリティにnoseというのがある。インストールすると,プロジェクトに関連した複数のテストを順番に走らせてくれ,Pythonのunittestを拡張してくれるとても気の利いたPythonicなツールだ。n
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く