とあるpythonモジュールをWindows環境でeasy_installしようとすると。
こんなエラー。
File "C:\Python27\Lib\ctypes\__init__.py", line 353, in __init__
self._handle = _dlopen(self._name, mode)
TypeError: expected string or Unicode object, NoneType found
該当ソースを見ると、
LIBRT = CDLL(find_library("rt"))
なるほどlibrtのお出ましですか。
ですが2.5のドキュメントにはすでに、clock()が存在します。
clock( )
Unixでは、現在のプロセッサ時間秒を浮動小数点数で返します。時刻の精度および ``プロセッサ時間 (processor time)'' の定義そのものは同じ名前の C 関数に依存します。いずれにせよ、この関数は Python のベンチマーク や計時アルゴリズムに使われています。 Windows では、最初にこの関数が呼び出されてからの経過時間を wall-clock 秒で返します。この関数は Win32 関数 QueryPerformanceCounter() に基づいていて、その精度は通常 1 マイクロ秒以下です。
ちょっとググると、こんな解説記事も出てきます。
time – 時間を扱う関数 - Python Module of the Week
レガシィなCコードから引っ越したの?という感想。
(2017.07.17追記)
time.clock()だとプロセッサ時間になっちゃうんですね。こりゃ早合点しました。反省至極。
コメント