python中readlines读取指定⾏_Python从readlines读取前四⾏
()
使⽤with可确保完全关闭⽇志。
您可以像使⽤Python中的任何⽂件类型对象⼀样遍历sys.stdin,这样更快,因为它不需要创建列表。
with open('/tmp/redirect.log', 'a') as log:
while True: #If you need to continuously check for more.
for line in sys.stdin:
if line.startswith(("GET", "User-Agent")):
log.write(line)以下是⼀种有效的⽅法,因为它不会⼀次⼜⼀次地检查相同的⾏,并且仅在需要剩余的⾏时进⾏检查。考虑到这种情况,可能不需要,但是如果你有更多要检查的物品,还有更多东西可以分类,那么值得做。它还意味着您可以跟踪您拥有的部件,并且不会超出您需要的范围。如果阅读是⼀项昂贵的操作,这可能是有价值的。
with open('/tmp/redirect.log', 'a') as log:
while True: #If you need to continuously check for more.
needed = {"GET", "User-Agent"}
for line in sys.stdin:
for item in needed:
if line.startswith(item):
writeline方法属于类log.write(line)
break
if not needed: #The set is empty, we have found all the lines we need.
break该集合是⽆序的,但我们可以假设这些⾏将按顺序排列,因此按顺序记录。
对于更复杂的⾏检查(例如:使⽤正则表达式),也可能需要这种设置。然⽽,在你的情况下,第⼀个例⼦是简洁的,应该运作良好。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。