簡単な時差Pythonスクリプトを私が知っているものと一緒にまとめましたが、Python2.7.3で正常に動作します。スクリプトは時差を見つけ、を使用してUbuntuでデスクトップ通知を送信しますpython-notify
。
$ cat timediff.py
import sys
import pynotify
import datetime
now = datetime.datetime.now().replace(microsecond=0)
then = datetime.datetime(2012,11,5,8,0,0)
diff = then - now
hours = (diff.seconds) / 3600
minutes = (diff.seconds - hours * 3600) / 60
seconds = (diff.seconds - (hours * 3600 + minutes * 60))
def sendmessage(title, message):
pynotify.init("image")
notice = pynotify.Notification(title,message,"/usr/share/icons/gnome/48x48/status/important.png").show()
return notice
sendmessage("Time remaining to exam","%s days, %s hours, %s minutes and %s seconds."% (diff.days,hours,minutes,seconds))
ただし、Python3.2.3で実行すると失敗するようです。python-notify
Python3.2用のモジュールがないようです。
$ python3.2 timediff.py
Traceback (most recent call last):
File "timediff.py", line 2, in <module>
import pynotify
ImportError: No module named pynotify
どういうわけかPython3でpython-notifyを使用することは可能ですか、それともバインディングがPython 3.2に移植されるまで、Python 2.7を使い続ける必要がありますか?
2010年4月付けのメーリングリストを見つけました。これは、 pynotify
Python3と互換性がない可能性があることを示唆しています。少なくともその点で改善はありましたか?