[英]Get a string by number [Python]
我有一個以數字結尾的字符串列表,我需要根據給定的數字找到一個。
strings = ["..1", "..2" , "..6", "..16","..26"]
tosearch = 6
for mystr in strings:
if tosearch in mystr:
print("FIND!")
但是,如果我搜索“ 6”,我會發現3個字符串(.. 6,.. 16,.. 26)如何才能通過給定的數字精確地找到一個字符串(如果tosearch是26,我只會得到“ .. 26” )
完成搜索的一種方法是更改搜索字符串:
strings = ["..1", "..2" , "..6", "..16","..26"]
tosearch = 6
tosearch = '..{}'.format(tosearch) # ==> '..6'
for mystr in strings:
...
import re
strings = ["..1", "..2" , "..6", "..16","..26"]
pattern=re.compile(r"\d+")
stringnumbers = [int(pattern.findall(i)[0]) for i in strings]
tosearch = 6
if tosearch in stringnumbers:
print("FIND!")
strings = ["..1", "..2" , "..6", "..6","..16","..26"]
nstr =[int(s.replace('.','')) for s in strings]
tosearch = 6
for mystr in nstr:
if tosearch == mystr:
print("FIND!")
break
輸出:
FIND!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.