我已經在virtualenv中安裝了pytz(v2013.8,但它發生在2013.b,2011k)。第一次撥打第一次調用pytz.timezone在virtualenv中速度很慢
pytz.timezone("US/Eastern")
大約需要4秒鐘。在常規環境中,這基本上是瞬間的。
有沒有人有一招讓它跑得更快?
我已經在virtualenv中安裝了pytz(v2013.8,但它發生在2013.b,2011k)。第一次撥打第一次調用pytz.timezone在virtualenv中速度很慢
pytz.timezone("US/Eastern")
大約需要4秒鐘。在常規環境中,這基本上是瞬間的。
有沒有人有一招讓它跑得更快?
我實際上通過玩弄並查看源代碼來了解答案。由於它從egg內獲得它的時區設置,並且第一次調用timezone必須檢查所有的時區文件是否存在,第一次調用可能會很慢,這取決於os如何找到這些文件。如果使用apt-get install python-tz
安裝pytz,然後調用命中未壓縮的文件,速度非常快。如果使用easy_install pytz
進行安裝,則它會一遍又一遍地碰到一個壓縮文件,速度較慢。
所以解決方案是解壓縮它。幸運的是,pip有一個方便的命令。
TL;博士
pip unzip pytz
好像在Windows中直接刪除pytz-2013.9-py2.7.egg
我有一個很難運行
PIP解壓pytz
,因爲它說它找不到該包。我發現這工作的解決方法是編輯setup.py文件和更換
zip_safe =假
。 (將其設置爲False)。然後再次運行安裝程序:
蟒蛇的setup.py安裝
這解決了我的緩慢的加載時間的問題也是如此。
不錯的自我回答! –
這可能對未來很有幫助,做得很好! :)當你需要代表時,考慮重新發布作爲答案。 – BartoszKP