举例:如果输入“hdj1212fkfdafkjddjhf3434”,应该返回:12123434
思路一:利用ASCII中“0-9”,小写字母、大写字母的顺序,实现。
def function(string):
lists =[]
for i in string:
if i>="0" and i<="9":
lists.append(i)
return int(''.join(lists))
思路二:利用Python自带type自建函数功能实现。
def function1(string):
lists=[]
for i in string:
j=i
try:
if type(int(j))==int:
lists.append(i)
except:
continue
return int(''.join(lists))
def function2(string):
lists=[]
numlists=['0','1','2','3','4','5','6','7','8','9']
for i in string:
if i in numlists:
lists.append(i)
return int(''.join(lists))
思路一和思路三的想法比较普适性,对各种语言都基本适用,面试官也许会更喜欢第一种,因为某次面试当我说出了后两者思路,感觉面试官不是很满意的样子。哼~