2017-05-06 113 views
1

我有一個字符串,我想添加到列表中,但我不希望將單引號添加到列表項中。Python - 沒有單引號的Sting列表

我有以下字符串:

arcpy.Point(2748877.71681,-3785391.73006), arcpy.Point(2731755.82248,-3765823.85082), arcpy.Point(2751323.70172,-3758485.8961) 

我想不能添加到列表這一點,但沒有單引號。我目前得到這個:

['arcpy.Point(2748877.71681,-3785391.73006), arcpy.Point(2731755.82248,-3765823.85082), arcpy.Point(2751323.70172,-3758485.8961)'] 

我需要有以下的輸出,而:

[arcpy.Point(2748877.71681,-3785391.73006), arcpy.Point(2731755.82248,-3765823.85082), arcpy.Point(2751323.70172,-3758485.8961)] 

我也不過試過兩個以下的,他們都不起作用:

>>> area_array = "arcpy.Point(2748877.71681,-3785391.73006), arcpy.Point(2731755.82248,-3765823.85082), arcpy.Point(2751323.70172,-3758485.8961)" 
>>> area_array_list = ["{}".format(area_array)] 
>>> area_array_list_str ="[{}]".format(area_array) 
['arcpy.Point(2748877.71681,-3785391.73006), arcpy.Point(2731755.82248,-3765823.85082), arcpy.Point(2751323.70172,-3758485.8961)'] 
"[arcpy.Point(2748877.71681,-3785391.73006), arcpy.Point(2731755.82248,-3765823.85082), arcpy.Point(2751323.70172,-3758485.8961)]" 

area_array_list給我的名單,但與單引號和area_array_list_str只給了我一個字符串結果(不是一個列表)。

感謝您的任何幫助。

+1

報價不是字符串的一部分。他們表明它被表示爲一個字符串,所以你無法避免它們。它將是'[[text1,text2 ...]','['text1,text2,...']',或者你已經遺漏了,但是最合理的'['tex1','text2' ,...]。 – JohanL

+0

那麼有沒有辦法避免它們,並得到我需要的結果? – Genspec

+1

你想要什麼?當你打印你的刺,它會顯示沒有引號。 – JohanL

回答

1

正如已經暗示的那樣,您應該使用evallist構造函數將其列入列表中。僅僅使用[]將不起作用,因爲eval將創建一個元組,而不是一個列表。

list(eval('arcpy.Point(2731755.82248,-3765823.85082), arcpy.Point(2751323.70172,-3758485.8961)')) 

輸出將不正是你有什麼上市以後,有沒有功能將執行(你放心上市什麼不帶任何引號是不可能的),但它應該是一樣使用。

+1

非常感謝彼得G.現在這是爲我工作。 – Genspec