2012-02-24 28 views
0

類型檢查我要檢查如果variabel具有類型列表Zope中

if isinstance(filter, type([])) != True: 
    filer = [filter] 

當我嘗試這樣的Zope不能找到型。

,而我不能使用:

isinstance(filter, list) 

職高Zope中的意思是「清單」是一個Variabel

+0

你是否在代碼的其他地方使用'filter'和'list'作爲變量名?這些是python內建的,你不想覆蓋它們。如果你是這樣的話,那真是個壞主意,而這正是你遇到的問題。 – Wilduck 2012-02-24 16:00:47

+0

是過濾器是我的變量,但我不使用列表 – Hackbard 2012-02-24 16:22:01

+0

如果你沒有覆蓋'list'內建,那麼你的代碼'isinstance(filter,list)'應該可以正常工作。你能編輯你正在看到的錯誤嗎? – Wilduck 2012-02-24 16:25:24

回答

2

在編寫Python代碼它要覆蓋內置變量是很重要的。

看起來您使用list作爲變量名,阻止isinstance按預期工作。同樣值得注意的是,filter也是內置的,你應該爲filter找到另一個名字。

+0

現在我在擴展文件夾中使用了外部腳本。它太多的代碼來重新編碼它。 – Hackbard 2012-02-24 16:42:30