Python Jython 記錄 ImportError

  1. import sys
    print sys.path 查看sys包含了哪些路徑,一般import某個模塊時都會優先在這裏面查找。如果用jython,由於jython的System.out.println(sys.path.toString());顯示只有少量的路徑,故使用jython調用python腳本時容易發生某些庫找不到的問題,這時候就要手動添加語句如下:
    PySystemState sys = Py.getSystemState();
    sys.path.add(“/usr/lib/python2.7”);
  2. 查看某個包所在路徑,如
    import os
    print os.file
    (file左右兩邊各有兩個下劃線)
  3. 獲取相對路徑
    import os
    os.path.dirname(file)
  4. 絕對路徑
    os.path.abspath
  5. 路徑組合
    os.path.join(A,B)
  6. 有些包就算加入到sys路徑中,jython也是讀取不到的,最後的錯誤類型是ImportError: No module named … ,因爲python有些包只提供了C代碼,並沒有.py文件,java是讀取不到的, 例如numpy中的multiarray模塊只有multiarray.so
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章