みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー Pythonのメタプログラミング手法の一つ「メタクラス」は,初心者にとっては「なんか強そう/経験値たくさんもらえそう」なアイテムの最右翼だと思う。反面「どうすればいいか/なにができるか」ということがなかなか理解しづらい。 英語のブログを見ていたら,メタクラスの理解に役立ちそうなちょうどよいサンプルを見つけたので,紹介がてら独自の解説を付け加えたいと思います。 メタクラスを簡単に説明すると,「本来コードを書かなければ実現できないような処理を黒魔術的な処理でなんとかしちゃう」ためのテクニックです。コード量を(時には劇的に)減らすことができたり,すっきりした見通しの良いクラス設計を実現できま
Dumbo is a project that allows you to easily write and run Hadoop programs in Python (it’s named after Disney’s flying circus elephant, since the logo of Hadoop is an elephant and Python was named after the BBC series “Monty Python’s Flying Circus”). More generally, Dumbo can be considered a convenient Python API for writing MapReduce programs. def mapper(key, value): for word in value.split(): yi
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
This domain may be for sale!
はじめに 組み込みアプリケーション開発、特にセットトップボックス(STB)やデジタル家電、携帯電話などそれなりのUIを要求される製品の開発では、Webブラウザを搭載しユーザーインターフェース(UI)をHTML+JavaScriptで構築することがあります。この手法のメリットとして以下のようなことが挙げられます。 UIとロジックの分離 家電製品に搭載するような画面の動きをプログラマが全てコードで記述しようとすると大変です。UIをHTML(+CSS)で記述できれば画面作成はデザイナーにお願いし、プログラマーはロジックに集中できます。最後のUIとロジックの結合作業はプログラマー側に残りますが… 開発工数の削減 UIをHTMLで記述できれば、C/C++やJavaで記述するのに比べて開発効率の向上が見込まれます。それに伴い、工数削減、開発期間短縮が期待出来ます。 豊かな表現力、操作性の実現 ブラウザ
gEdit プラグインは Python で簡単に作れます。 せっかく Python の勉強をしているんだから作ってみましょう。 Gedit/Plugins - GNOME Live! おなじみ(?)本家プラグインのページの一番下に C と Python の houto へのリンクがあります。 つまりは C か Python でしか作れません、だから Python を選んだほうがいいと。 ということで gedit.Plugin を継承したクラスを作ってコードを書けばいいようである。 そしてそのコードを参照する INI ファイルを作って gedit-plugin と拡張子を付ける。 インスタンス化は勝手に gEdit がやってくれるようです。 Gedit/PythonPluginHowTo - GNOME Live! 英語だし意図的に難しく書いてあるとしか思えない内容なので勝手
1章: 始めよう¶ Pythonのインストール Pythonの実装系 Jython IronPython PyPy その他の実装 Linux へのインストール パッケージインストール ソースコンパイル Windows へのインストール Python のインストール MinGW のインストール MSYS のインストール Mac OS X へのインストール パッケージインストール ソースコンパイル Python プロンプト インタラクティブプロンプトのカスタマイズ iPython: より良いプロンプト setuptools のインストール 動作原理を理解する EasyInstallを使ったsetuptoolsのインストール distutilsにMinGWのフックを入れる 作業環境 エディターと補助ツールを使う コードエディター Vimのインストールと設定 その他のエディタを使う その他のバイナ
概要¶ これは Google Python Style Guide Revision 2.29 を日本語に訳したものです。 本家ガイドは CC-By 3.0 ライセンス の基で公開されています。また、本ガイドも同ライセンスを継承します。 本家ガイドの著者は以下の通りです。 Amit Patel Antoine Picard Eugene Jhong Jeremy Hylton Matt Smart Mike Shields また、本ガイドの翻訳者は以下の通りです。 Kosei Kitahara 本ガイドに誤植、誤訳があった場合は issue で教えてください。 その他本ガイドに関する問い合わせは、サイト最下部に記載のメールアドレスか @Surgo にお願いします。 はじめに¶ Python は Google で使われている主要なスクリプト言語です。 このスタイルガイドは Python によ
今回はA*アルゴリズムをPythonでやってみます。 ゲームプログラマの間では、もはや常識となりつつある最短経路問題解決アルゴリズムです。 A*は、古典的手法である「ダイクストラ法」を改良したものです。 スタート地点からノードnを通ってゴールに辿り付くとき、最短距離をf(n)とすると、 f(n) = g(n) + h(n) とすることができます、g(n)は「スタートからノードnまでの最短距離」、h(n)は「ノードnからゴールまでの最短距離」です。 でも、最初から適切なg(n)とh(n)が判ってるなら苦労しませんよね。 だから、テキトーな予測値を使って、最短経路をある程度予測して効率的に経路探索をしてみようという事です。 テキトーな予測値を使った最短経路距離をf*(n)とすると f*(n) = g*(n) + h*(n) となります、f*(n)を求めるためにテキトーなg*(n)とh*(n)を
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー Pythonの生みの親Guidoパパのブログエントリを翻訳してみました。「Why explicit self has to stay - なぜPythonのメソッド引数に明示的にselfと書くのか」。Pythonのメソッド引数に書く「self」はしばしば,他言語からのPython移民を中心に「ウザイ」「キモイ」「消えてなくなれ」と攻撃の対象となることが多いのです。GuidoパパはPythonが生まれて10年,もう何度も似たようなことを聞かされ,そのたびに明快な反論を行ってきました。言語の設計者には,技術的な素養はもちろんのこと,情熱と根気,そして我慢強さが必要なんだなあとつくづく思い知
Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at
Monetize Your Data with White-Labeled Analytics Products.Juice is your end-to-end solution to design, develop, and deploy with confidence. Transform Your Data into RevenueJuice is a full-service partner for creating revenue-generating analytics solutions. With our expertise and proprietary platform, we turn your data into valuable products that drive growth. Here's how we stand apart: Rapid Time-t
NOTE: If you would like some Python development done, my company, Stochastic Technologies, is available for consulting. This tutorial is available as a short ebook. The e-book features extra content from follow-up posts on various Python best practices, all in a convenient, self-contained format. All future updates are free for people who purchase it. Preliminary fluff So, you want to learn the Py
Problems 1-6 André Roberge has a zip file with solutions to the first six problems, in Crunchy format: First six Problem 7: Flatten a nested list structure Based on the standard library documentation: from itertools import chain def flatten(listOfLists): return list(chain(*listOfLists))The suggested solution does not work for a list like the following: a_list = [0, 1, [2, 3], 4, 5, [6, 7]]as the a
TEC, Python | 12:44オラオラさんがLLVMのPythonフロントエンドを自作してしまったらしい。http://code.google.com/p/py2llvm/解説はここhttp://groups.google.co.jp/group/llvm_study/web/%E7%AC%AC%E4%B8%80%E5%9B%9E+llvm+%E5%8B%89%E5%BC%B7%E4%BC%9A(オラオラさんの書いたllvm紹介pdfもすばらしい) pythonに型推論を追加してllvm IRに変換、後はllvmが最適化&ネイティブ化、simdの恩恵を受けられるようにする。Python codeをAST木に変換する標準モジュールとllvm APIのpython wrapperを使用。関数引数の型は推論できないのでデフォルト引数に型オブジェクトを与えてヒントにする。1000倍の高速化
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く