[英]Get digits from string
我想解析一條線,並使用python從中獲取一組特定的數字。
該字符串如下所示:“可用72732672字節(已使用56004608字節)”這些數字可以是任何數字值,這使我無法預先定義此值。 在這種情況下,特定目標是“ 72732672”。
你們有什么解決辦法嗎?
因此,您需要字符串中的整數嗎? 一種方法是使用正則表達式 。 但這無需使用正則表達式即可完成。
>>> line = "72732672 bytes available (56004608 bytes used)"
>>> [int(word) for word in line.split() if word.isdigit()]
[72732672]
如果您想使用正則表達式-
>>> import re
>>>
>>> re.findall(r'\d+', line)
['72732672', '56004608']
使用re
模塊:
>>> digits = re.compile(r'[0-9]+')
>>> digits.findall("72732672 bytes available (56004608 bytes used)")
['72732672', '56004608']
您可以使用int轉換為實際數字:
>>> l = digits.findall("72732672 bytes available (56004608 bytes used)")
>>> l = [int(x) for x in l]
>>> l
[72732672, 56004608]
>>> import re
>>> text = "72732672 bytes available (56004608 bytes used)"
>>> re.findall(r'\d+', text)
['72732672', '56004608']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.