将值保存到python中的文件

时间:2014-04-04 06:18:36

标签: python

我正在使用re.search在.txt文件中找到一个值,当我运行它时,我得到你需要在屏幕上打印的值,这是我运行代码时出现的。

https://docs.google.com/file/d/0B1gujcFhb7SyeG9aalFoaXlLd28/edit?usp=drivesdk',
Traceback (most recent call last):
  File "url_finder.py", line 5, in <module>
    print re.search("(?P<url>https?://[^\s]+)", line).group() 
  AttributeError: 'NoneType' object has no attribute 'group'

https://docs.google.com/file/d/0B1gujcFhb7SyeG9aalFoaXlLd28/edit?usp=drivesdk&#39; 是我要查找的值,我想要做的就是将此值保存到单独的文本文件中,以便我可以将其用于某些内容其他。是否可以暂停此错误并保存该值。或者我想将其设置为返回值,因为此脚本将在脚本中运行。

1 个答案:

答案 0 :(得分:2)

错误表示您的re.search已退回None。您试图在match.group()上致电None,这会导致错误。

要解决此问题,请尝试:

for line in your_file:
    match = re.search("(?P<url>https?://[^\s]+)", line)
    if match is not None:
        return match.group()

现在它将返回该行..

或者,如果您想将其存储在变量中,您可以使用match对象并在找到后将其打印出来。

for line in your_file:
    match = re.search("(?P<url>https?://[^\s]+)", line)
    if match is not None:
        break

print match.group()