【发布时间】:2017-08-17 19:41:49
【问题描述】:
我正在使用 Python 在大型文本文件中搜索某个字符串,该字符串下方是我有兴趣对其执行数据分析的数据。
def my_function(filename, variable2, variable3, variable4):
array1 = []
with open(filename) as a:
special_string = str('info %d info =*' %variable3)
for line in a:
if special_string == array1:
array1 = [next(a) for i in range(9)]
line = next(a)
break
elif special_string != c:
c = line.strip()
在special_string 变量中,info = 之后的任何内容都可能有所不同,因此我尝试使用如上所示的通配符运算符。我可以让函数运行的唯一方法是,如果我输入我想要搜索的确切字符串,包括等号之后的所有内容,如下所示:
special_string = str('info %d info = more_stuff' %variable3)
如何将通配符运算符分配给字符串的其余部分以使我的函数更加健壮?
【问题讨论】:
-
使用正则表达式。
*在 Python 字符串操作中不起作用。
标签: python function parsing wildcard