我试图通过搜索“。”来打印23.45和7.8。在每个字符串中。 这是我的代码。
mylist = ["1,23.45,6,7.8","1,25,999"]
tokens =mylist[0].split(',')
for number in tokens :
if re.search('.', number) :
print number ,
结果:1 23.45 6 7.8
答案 0 :(得分:2)
与往常一样,我建议人们在不需要正则表达式时不要使用正则表达式。在这种情况下,请使用in
运算符。
if '.' in number:
替换
if re.search('.', number):
如果你很好奇,应该是
if re.search('\.', number):
答案 1 :(得分:1)
试试这个。正则表达式对我来说根本不像pythonic。
mylist = ["1,23.45,6,7.8","1,25,999"]
tokens =mylist[0].split(',')
for number in tokens :
if "." in number:
print number
但我特别喜欢的并不像pythonic。但我学会了喜欢lambdas over loops。
mylist = ["1,23.45,6,7.8","1,25,999"]
tokens =mylist[0].split(',')
result = filter(lambda x: "." in x, tokens)
print result