![](/img/trans.png)
[英]How to remove quotes from list of strings and store it as list again..?
[英]How to remove double quotes from list of strings?
VERSION = ["'pilot-2'", "'pilot-1'"]
VERSIONS_F = []
for item in VERSION:
temp = item.replace('"','')
VERSIONS_F.append(temp)
print (VERSIONS_F)
在上面的代碼塊VERSIONS_F
也打印相同的["'pilot-2'", "'pilot-1'"]
,但我需要類似['pilot-2', 'pilot-1']
。 我什至嘗試過strip('"')
並沒有看到我想要的。
您可以在幾行中執行此操作:
VERSION = ["'pilot-2'", "'pilot-1'"]
VERSIONS_F = [item [1:-1] for item in VERSION]
print(VERSIONS_F)
輸出:
['pilot-2', 'pilot-1']
這種方式只是簡單地從字符串中切出第一個和最后一個字符,假設“”總是在第一個和最后一個位置。
注意:Grismar 也很好地概述了幕后發生的事情
當您打印列表時,Python 將打印列表的表示形式,因此列表中的字符串不會像通常的字符串那樣打印:
>>> print('hello')
hello
相比:
>>> print(['hello'])
['hello']
添加不同的引號會導致 Python 選擇相反的引號來表示字符串:
>>> print(['\'hello\''])
["'hello'"]
>>> print(["\"hello\""])
['"hello"']
初學者 Python 程序員經常犯將控制台上打印的內容與實際值混淆的錯誤。 print(x)
不告訴你的實際值x
(無論那是),但它的文本字符串表示。
例如:
>>> x = 0xFF
>>> print(x)
255
這里,一個值被分配為其十六進制表示,但當然實際值只是 255(十進制表示),十進制表示是打印整數值時選擇的標准表示。
變量的“真實”值是一個抽象的數值,表示它時所做的選擇不會影響它。
在您的情況下,您使用VERSION = ["'pilot-2'", "'pilot-1'"]
將字符串定義為將單引號作為字符串的一部分。 所以,如果你想刪除那些單引號,你可以:
VERSION = ["'pilot-2'", "'pilot-1'"]
VERSIONS_F = []
for item in VERSION:
temp = item.replace("'",'')
VERSIONS_F.append(temp)
print (VERSIONS_F)
結果:
['pilot-2']
['pilot-2', 'pilot-1']
或者,更簡單地說:
VERSIONS_F = [v.strip("'") for v in VERSION]
回應評論:
VERSION = ["'pilot-2'", "'pilot-1'"]
temp_list = ['pilot-1', 'test-3']
print(any(x in [v.strip("'") for v in VERSION] for x in temp_list))
嘗試這個:
VERSION = ["'pilot-2'", "'pilot-1'"]
VERSIONS_F = []
for item in VERSION:
temp = item.replace("'",'')
VERSIONS_F.append(temp)
print (VERSIONS_F)
它將打印['pilot-2','pilot-1']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.