0
A
回答
1
根據你目前如何儲存該列表:
def to_int(s):
s = ''.join(ch for ch in s if ch.isdigit())
return int(s)
lst = [('(10', '40)'), ('(40', '30)'), ('(20', '20)')]
lst = [(to_int(a), to_int(b)) for a,b in lst] # => [(10, 40), (40, 30), (20, 20)]
或
import ast
s = "[('(10', '40)'), ('(40', '30)'), ('(20', '20)')]"
s = s.replace("'(", "'").replace(")'", "'")
lst = ast.literal_eval(s) # => [('10', '40'), ('40', '30'), ('20', '20')]
lst = [(int(a), int(b)) for a,b in lst] # => [(10, 40), (40, 30), (20, 20)]
0
>>> L = [('(10', '40)'), ('(40', '30)'), ('(20', '20)')]
>>> [tuple((subl[0].lstrip("("), subl[1].rstrip(")"))) for subl in L]
[('10', '40'), ('40', '30'), ('20', '20')]
或者,如果你婉的數字在你的元組最終是int
S:
>>> [tuple((int(subl[0].lstrip("(")), int(subl[1].rstrip(")")))) for subl in L]
[(10, 40), (40, 30), (20, 20)]
0
您可以致電.strip('()')
個別項目(如果他們是字符串,如在您的示例中)去除尾隨(
和)
。
有以應用在單要素多種方式:
列表理解(最Python的)
a = [tuple(x.strip('()') for x in y) for y in a]
map
和lambda
(有趣的)
的Python 3 :
def cleanup(a: "list<tuple<str>>") -> "list<tuple<int>>":
return list(map(lambda y: tuple(map(lambda x: x.strip('()'), y)), a))
a = cleanup(a)
的Python 2:
def cleanup(a):
return map(lambda y: tuple(map(lambda x: x.strip('()'), y)), a)
a = cleanup(a)
0
過程中的原始字符串來代替。我們稱之爲a
。
在a='((10 40), (40 30), (20 20), (30 10))'
,您可以撥打
[tuple(x[1:-1].split(' ')) for x in a[1:-1].split(', ')]
從字符串的[1:-1]
裝飾斗拱,split
而分裂成字符串字符串列表。 for
是一種理解。
0
s = "((10 40), (40 30), (20 20), (30 10))"
print [[int(x) for x in inner.strip('()').split()] for inner in s.split(',')]
# or if you actually need tuples:
tuple([tuple([int(x) for x in inner.strip('()').split()]) for inner in s.split(',')])
2
直截了當,使用列表理解和literal_eval。
>>> from ast import literal_eval
>>> tuple_list = [('(10', '40)'), ('(40', '30)'), ('(20', '20)')]
>>> [literal_eval(','.join(i)) for i in tuple_list]
[(10, 40), (40, 30), (20, 20)]
相關問題
- 1. 從元組列表中刪除元組
- 2. 如何從JavaScript中的字符串列表中刪除元音
- 3. 如何從列表中刪除字符
- 4. 從Python中的元組列表中的字符串中刪除字符
- 5. 如何從字典中的列表中刪除列表元素?
- 6. 從元組列表中刪除元素
- 7. 如何從列表中刪除一個字符串的元素
- 8. Python如何從列表中的字符串中刪除字符
- 9. 如何從字符向量列表中刪除元素?
- 10. 從元組中刪除逗號列表
- 11. 如何從數組中刪除字符
- 12. 如何從列表中刪除元素
- 13. 結合元組和列表的列表,從列表中刪除元組元素
- 14. 如何有條件地從元組列表中刪除元素?
- 15. 如何從字符串列表中刪除連字符
- 16. 如何從字符串列表中刪除單詞列表?
- 17. 如何從字符串列表中刪除單詞列表
- 18. 從字典值列表中刪除的元組,如果在元組= 1
- 19. 如何從Python中的字符串列表中刪除numpy nan?
- 20. 如何從numpy數組列表中刪除重複的元素?
- 21. 如何從我的元組列表中刪除項目?
- 22. 如何從我的數組列表中刪除元素?
- 23. 如何刪除列表中元素的最後2個字符?
- 24. 從列表中刪除字符
- 25. 從列表中刪除某些字符
- 26. 從列表中刪除字符
- 27. 從列表中刪除特殊字符
- 28. 從列表中刪除單個字符
- 29. 從列表中刪除字符串
- 30. python從列表項中刪除字符
你能否提供更多代碼來證明你是如何達到這一點的?這個問題可能與您的數據生成方式有關,並且可能會以不同的方式處理,以避免必須解決此「問題」。 –
我嘗試格式化字符串:((10 40),(40 30),(20 20),(30 10))到元組列表。 – user7172
@flup你是對的,我刪除我的評論。 –