如何使用正则表达式将变量传递给搜索。

时间:2014-09-18 10:20:12

标签: python regex

我正在尝试将值传递给函数和函数内部我想使用该值来使用正则表达式从文本文件中搜索一行。

但得到错误:

代码:

import re

def search(Key_Word):
   f= open("LICENSE.txt","r")
   for i in range(0,10000):
       d= f.readlines()
       match=re.search(r"Key_word",d)
       if match:
           print d

Key_Word="TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON"
search(Key_Word)

错误:

Traceback (most recent call last):
  File "C:\Python27\rough.py", line 12, in <module>
    search(Key_Word)
  File "C:\Python27\rough.py", line 7, in search
    match=re.search(r"Key_word",d)
  File "C:\Python27\lib\re.py", line 142, in search
    return _compile(pattern, flags).search(string)
TypeError: expected string or buffer

请帮助..

1 个答案:

答案 0 :(得分:0)

f.readlines()会返回一个行列表,您可能需要使用f.readline()来读取一行。