2015-10-26 92 views
-2

enter image description here對象類型'長'沒有len()

錯誤出現在第10行。我不知道如何解決它。 我想迭代一個字符串,直到找到字符「[」

+2

該錯誤消息是明確的,'valor'是類型'long'的。在進入該循環之前,只需檢查'valor'是否是字符串? –

+0

我認爲您認爲'valor'會出現什麼問題 –

+1

請始終將您的代碼包含爲文本,以便潛在的答覆者可以複製並運行它。 –

回答

2

如果您先將valor變量轉換爲字符串,您應該可以在其上執行這些循環。但是,如果原始值是long,我非常懷疑你會找到一個[字符。

valor = str(sheet.cell(row=rowNum, column=columnNum).value 

有可能是這個代碼的一些嚴重的問題,但沒有足夠的代碼在這裏充分診斷問題。

+0

我把完整的代碼。這是關於一個excell文件。我想刪除兩個括號之間的內容:「[]」 –

0

我從前編輯過我的帖子。這可能是使用isinstance()的最直接的方法。

if isinstance("apple", str): 
    print "apple is a str" 
if isinstance(40, str): 
    print "40 is a str" 
else: 
    print "40 is not str" 

輸出將是:

蘋果是STR

40不str的

+0

如何?我不知道該怎麼做:( –

相關問題