このBlogは移転しました。今後は aish.dev を御覧ください。

2018-01-01から1ヶ月間の記事一覧

Python/CFFIでCUDAしてみる

ふと思い立って、CUDAでCPUからGPUにデータを転送する時の速度を測ってみた。 普通にCUDA SDKのサンプルで測定しても良いが、PythonのCFFI で実行してみよう。 コードはこんな感じで書ける。 import time import sys from cffi import FFI ffi=FFI() ffi.cde…

クラスブロックのひみつ

さて、 リスト内包のひみつ - atsuoishimoto's diary で、Python3では、リスト内包式は関数呼び出しとなることを説明した。 >>> a = [i*2 for i in range(3)] というスクリプトは、次のように展開される。 >>> def _listcomp(_it): ... ret = [] ... for i i…

リスト内包のひみつ

こちらのTweetが Python.jp slack でちょっと話題になっていた。 どういうこと? pic.twitter.com/BxyyWbyvQo— ahuglajbclajep (@ahuglajbclajep) 2018年1月24日 次のようなコードだ >>> a = [lambda: print(i) for i in range(3)] >>> for i in a: i() 2 2 …

Python文法詳解(二刷) 正誤表

以下の正誤表は、二刷のものです。一刷の正誤表は Python文法詳解(一刷) 正誤表 - atsuoishimoto's diary を参照してください。 第3章 P.50 誤 >>> 1 + 1j # 整数 + 複素数 (1+2j) # 結果は複素数となる 正 >>> 1 + 1j # 整数 + 複素数 (1+1j) # 結果は複素…

Pythonのfor文は遅い?

bicycle1885.hatenablog.com こちらの記事を拝見していて、ちょっと気になったので注釈。 PythonやRを使っている人で、ある程度重い計算をする人達には半ば常識になっていることとして、いわゆる「for文を使ってはいけない。ベクトル化*1しろ。」という助言…