2012-03-08 60 views
2

我是新來的這整個python交易,並承認我失去了一半 - 不知道我是來還是去。所以,這是一個問題,我希望有人能夠幫助我。Python - 導入json返回模塊沒有找到

我正在運行RedHat系統,默認情況下,它已經安裝了python 2.4。我有一個python腳本,在嘗試導入json時給了我一個錯誤。

我檢查了我的phpinfo,它顯示我有json版本1.2.1(或其他) - 爲什麼Python不承認這個json確實存在?是否有需要編輯的文件,以手動輸入或編輯python在哪裏尋找json,如果是,在哪裏?

我甚至嘗試安裝simplejson和python 3 - 到目前爲止沒有任何工作,我已經用完頭髮拔出。

任何幫助將不勝感激 - 在此先感謝。

回答

2

PHP不是Python,事實上你的PHP版本支持JSON對你的Python安裝沒有影響。 json模塊是在Python 2.6中引入的。

您可以嘗試安裝simplejson,但根據文檔,它僅支持自Python 2.5以來。(應該看完整個問題)

我會升級Python版本(最新版本是2.7.2)。你不會說爲什麼Python 3的安裝不起作用,但是可能停留在同一分支(即2.7)將會解決。

+2

隨着2.4你缺少了很多非常不錯的功能。我也建議儘可能升級。 – wberry 2012-03-08 20:45:05

+0

如果我輸入python -v來檢查版本 - 默認2.4出現。如果我輸入/ opt/python3/bin/python3 -V,那麼我得到版本3.2。但是繼承人讓我困惑了我正在運行的版本 - 如果我鍵入python3 -V,我找不到命令。 – user1257948 2012-03-08 20:52:02

+0

'/ opt/python3/bin'顯然不在你的'PATH'中 – jdi 2012-03-08 20:55:49

0

python需要python模塊用於json,這是而不是與json的php模塊相同。

有一些可供選擇,例如,您可以使用python-cjson,因此請確保已安裝此模塊。

您可以詢問哪些包都安裝這樣的RPM:rpm -qa | grep json

+0

#rpm -qa | grep json - 當輸入這個時 - 我得到: uptrack-python-cjson-1.0.5-5.el5 – user1257948 2012-03-08 20:53:53

+0

什麼是正確的導入命令來拉這個版本的ppython-cjson而不是 – user1257948 2012-03-08 20:55:06

+1

然而,'json'是一個Python 2.6中的標準模塊,這意味着腳本是爲Python 2.6或更高版本編寫和測試的。即使安裝了一些json模塊並且腳本使用它,腳本看起來很可能會以其他方式失敗,因爲它不是用Python 2.4編寫的。 – Weeble 2012-03-08 20:56:52