Learn Programming with ZetCode Accessible tutorials for C#, Go, Python, Java, and JavaScript to help you master coding. Explore Tutorials
Learn Programming with ZetCode Accessible tutorials for C#, Go, Python, Java, and JavaScript to help you master coding. Explore Tutorials
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー Pythonのメタプログラミング手法の一つ「メタクラス」は,初心者にとっては「なんか強そう/経験値たくさんもらえそう」なアイテムの最右翼だと思う。反面「どうすればいいか/なにができるか」ということがなかなか理解しづらい。 英語のブログを見ていたら,メタクラスの理解に役立ちそうなちょうどよいサンプルを見つけたので,紹介がてら独自の解説を付け加えたいと思います。 メタクラスを簡単に説明すると,「本来コードを書かなければ実現できないような処理を黒魔術的な処理でなんとかしちゃう」ためのテクニックです。コード量を(時には劇的に)減らすことができたり,すっきりした見通しの良いクラス設計を実現できま
1000人スピーカカンファレンスの二次会の飲み会会場を追い出された後、なぜかサイボウズラボに戻って三次会。 なぜかyukobaがSchemeを作り始め、amachangも「作る」と言い出した!「どうせだからハッカソンにしよう」って話が!いや、そんなことしだしたら帰れないし!ああっ!でも今書かなければ一生書かないかもしれないっ! というわけで書いたのがこちら。 どう書く?org 5414 にしお: 飲み会の後5時間で作ったものなのでかなり...(Schemeもどきの実装) - 投稿の詳細 残りの二人の書いたものはこちら。 Scheme on JavaScript 作りました - yukobaの日記 わーい \(^o^)/ Scheme もどきを JS で書いたよー! - IT戦記 - せっかくなのでハッカソンの雰囲気を少しでも伝えられるように書いてみる↓ 以下オフラインの発言は「」、Ling
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー uncertaintiesは面白いPythonのモジュールで,これを使うと「だいたいこれくらい」という数値のまま計算を行える。 Pythonのみで書かれたモジュールなので,インストールは簡単。「easy_install uncertainties」などでインストールするだけで,モジュールが使えるようになる。 たとえば,世田谷から成田空港まで車で行くとする。都心はどうしても渋滞するので,巡航速度40キロ/時±5キロで成田まで向かうとするとどのくらいの時間がかかるだろうか。こういう計算をするのにuncertaintiesか便利だ。 世田谷から成田空港まではだいたい84キロある。 >>> f
Youtubeからmp3に変換するPythonスクリプトをネットを参考に作成したのでメモ。 youtube_dlはpipでインストール。 ffmpegもDLが必要。 他にもyoutube-mp3-downloaderというモジュールも見つかったがどうなのだろう? mp4をDLして、変換はFreemake video converterでmp4からmp3に変換しても良いがmp4は重いのでネットに制限ある場合にはもったいない。 >C:Python34\Scripts\pip.exe install youtube-dlimport youtube_dl import sys import os import glob def dl(URL): options = { 'format': 'bestaudio[ext=mp3]/bestaudio[ext=m4a]/bestaudio' } wi
if ( $blog == " Webエンジニアのためのライフハック " ) { print " 1-byte.jp "; } ホーム1-byte.jpとは 書いてるヒトは どんどん、Pythonを勉強して行きますよ。 今日は初めてのPython II章をまとめます。 前回の記事はこちらです。 Pythonの勉強をまったく始められないあなたと私に送る8つのタスク 初めてのPython(1) 基礎知識のまとめ 初めてのPython II部 初めてのPythonのII部には”ビルトインオブジェクト“がまとめられています。 まず知っておかねばならないのは、Pythonではデータがオブジェクトとして扱われるということです。オブジェクトは、大きく、Python言語にあらかじめ用意されているビルトインオブジェクトと、PythonやCのツールを使ってプログラマ自らが作成するオブジェクトに分かれます。
「Django(の名前が)カッコイイ!」という事でPythonを始めてみました。 - あくまで個人的に始めたということです - 本文中のサンプルコードなどは全てPython2.4で実行しています Pythonはじめました 入門書は『初めてのPython』 ほか、情報源 それでは始めましょう お好みでどうぞ ほかにも ドキュメントを読みましょう 自作モジュールにも使えます 中の事を少し 実装 例えばCPython JIT(Just In Time)コンパイラ フローズンバイナリ それではダイジェストでどうぞ ステートメント 代入ステートメント memo memo ifステートメント whileループとforループ ループ内で利用出来るステートメント forループとイテレータとジェネレータ 全てはオブジェクト 不変性 オブジェクト指向とは関係ありません 関数やクラスを書く順序 ビルトインオブジ
リスト処理関数の仕様変更 Python3.0では、リスト処理に関わる多くの関数/メソッドに変更が加えられました。また、リスト処理を行う際に非常に便利なリスト内包表記にも追加・変更が加えられています。今回は、それらの関数/メソッド/構文について書きたいと思います。 iteratorへの変更 まずは、リスト1のソースをPython2とPython3で実行してみてください。 リスト1 リスト処理関数 print(range(10)) # range print(map((2).__mul__, range(10))) # map print(filter(lambda x: x % 2, range(10))) # filter print(zip(range(5), range(5, 10))) # zip d = dict(aa=100, bb=300) print(d.keys()) #
This page has two purposes: to describe how to implement computer language interpreters in general, and in particular to build an interpreter for most of the Scheme dialect of Lisp using Python 3 as the implementation language. I call my language and interpreter Lispy (lis.py). Years ago, I showed how to write a semi-practical Scheme interpreter Java and in in Common Lisp). This time around the go
ちょっと古いけど。 デブサミ会場で、雑談していると「PythonはDISらないんですか」と柴田さんから。なんか自虐的じゃない? とは言うものの、Pythonは基本的に良い言語で、 不満な点はかなり微妙だ。一般人にはどーでもいいような点だと思う。 一応リストを。 式と文の区別が明確。 インデントベースだとeRubyのようなテンプレートが難しい ブロックを含む式を持てない。Haskellみたいにブレースを使えば式にできるといいのに reduceがなくなる generator難しい。yieldを書くと戻り値が変化するってのはどうよ list comprehensionが難しい。英語人には人気みたいだけど Matz日記:PythonをDisる。 「Python は基本的によい言語」には同意。Rubyist でも、使ってもないのに Python を DIS る人がいるのは残念。インデントベースが嫌い
Online Compiler, AI Tutor, and Visual Debugger for Python, Java, C, C++, and JavaScript Python Tutor helps you do programming homework assignments in Python, Java, C, C++, and JavaScript. It contains a step-by-step visual debugger and AI tutor to help you understand and debug code. Since 2010, over 20 million people in more than 180 countries have used Python Tutor to visualize over 300 million pi
「エキスパートPythonプログラミング」の発売が、Amazonや一部の書店で始まりました。 エキスパートPythonプログラミング 著者:Tarek Ziade 販売元:アスキー・メディアワークス 発売日:2010-05-28 クチコミを見る 今回は、「エキスパートPythonプログラミング」の2章から、リスト内包表記について補足します。 本書で、リスト内方表記が速い理由について、次のような訳注を書きました。 訳注:リストに要素を append() する場合、インタプリタは「リストから append 属性を取り出してそれを関数として呼び出す」という処理をしなければなりません。 それに対して、リスト内包表記を使うと、インタプリタに直接「リストに要素を追加する」という処理をさせることができます。インタプリタが解釈する命令数が減る、属性の取り出しが不要になる、関数呼び出しが不要になる、という3
今日は何度も「なぜPythonの整数の割り算はC言語のようにゼロに向けて丸めるのではなく、切り捨てなのか?」と聞かれた。 数値が両方とも正の場合には、何も驚くようなことは発生しない。 >>> 5//2 2 しかし、どちらかの数値が負の場合、結果は切り捨てられる。言い換えると、ゼロから遠い方向(負の無限大方向)に向けて丸められる。 >>> -5//2 -3 >>> 5//-2 -3 この挙動は何人かの人を混乱させたようであるが、このような実装になっているのは数学的な根拠がある。整数の割り算の演算子(//)と、その弟の余りを計算する演算子(%)は、次のような数学的な関係を保っている。すべての変数は整数とする。 a/b = q あまり r これは、次のような関係性を持っている。 b * q + r = a かつ 0 <= r < b (ただし、a, bはともに0以上の整数) もしも、この式の関係
上記の結果より明らかなように,最適化したCに比べても Python の 実行速度のほうがまだ速いという結構驚きな結果が得られました. しかしながら,その Python よりもRのほうがまだ速いという ことも分かりました.特に逆行列の演算に関してはRの圧勝です. 以上の結果のまとめです: 実行速度の速さは R > Python > C の順 CよりPythonの方が15%程度速い しかしながら,特に逆行列の演算に関してはPythonよりRの方が40%程度速い おわりに 以上のベンチマークにより,少なくとも行列演算に関しては CよりもPythonの方が速いということが分かりました. 今回の実験は個人的なプログラム環境の乗り換えのための 判断材料として行なったのですが, 乗り換えに関しては Python の速度性が最大の懸念材料だったので, これで心おきなくCからPythonに乗り換えられます(
これはLL Ringというイベントの「じゃんけん2.0」に出場する際に「多くの構文に改行が必須であるPythonで書かれたじゃんけんエージェントをワンライナーにしていたらウケるかな」と思ってワンライナー化しているときに書いたメモです。自分用のメモのつもりだったので書き殴ってありますが、意外と人気のようなので近いうちに加筆します。 実は後から書いた英語版(How to make oneliner in Python?)の方が整理されているのかも。 完成したワンライナー def文を式にする defは改行を要求するのでlambdaに置き換える必要がある。 def foo(x): return x + 1(ここに改行) foo = lambda x: x + 1 globals().__setitem__("foo", lambda x: x + 1) lambdaは式しか含むことが出来ないので、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く