2011-09-01 142 views
0

我正在使用名爲CityEngine的程序,它具有一個python元素。試圖刪除單撇號的python

問題:我剛剛在一個對象上調用函數,並返回一個數字列表xyz。我把xyz分成他們自己的名字。我還調用一個函數來檢索與此對象相關的不同屬性,以替換先前檢索到的y值。

現在,當我打印y值時,它只包含除小數點以外的數字字符。 當我將y值合併到一個新列表中時,它的值有一個單撇號。

例如,如果我把它像的該位置[X,Y,Z]我得到的打印(位置)打印(y)返回5.0000000

[0, '5.000000',0]。該程序無法讀取單個撇號,因此完全忽略了該值。

我試過.remove(「'」,「」)和.strip(),沒有任何東西。

任何幫助,將不勝感激。

謝謝。

回答

2

看起來更像是函數沒有返回一個數字而是一個字符串。所以,爲了處理它,你必須使用int()float()來轉換字符串。

一般來說,如果您在某些物品清單上做了print(l),每個物品都會打印出其__repr__方法的輸出。約定它的字符串__repr__方法用單撇號包裝字符串,而數字不被包裝。這是爲了消除潛在的歧義。因此,print(l)它返回

[0, '5.00000', 0.1] 

將含有int,一個strfloat列表。

+0

嘿,非常感謝,解決了這個問題。將在5分鐘內接受答案:)。對於剛開始使用Python的人來說,轉換的方式,在我的情況下y = float(y) – Pat

0

將其轉爲浮動...這是一個字符串,所以你需要做的字符串浮充轉換