簡體   English   中英

在文件中的行中搜索特定單詞后的數字,然后遍歷該數字

[英]search the line in a file for a number after a particular word and iterate over that number

我有一個包含多行的文件,其中一個讀為:loop_iter 10 {apples = 0; 桔子= 0}

import sys
import re

input_file = open(r'C:\infile')
pat_file_read = input_file.read()

for line in input_file_read:
    match = re.search("loop_iter\s*(\d+)" , input_file_read)
    print match.group(1)

現在我可以將其打印多次,只要文件中有行

for line in input_file_read:
    if line.startswith("loop_iter"):
    match = re.search("loop_iter\s*(\d+)" , input_file_read)
    print match.group(1)  

不起作用...

堆棧溢出中此處的語法着色可能已經為您提供了提示...但是看來您的引號不匹配:

if line.startswith('loop_iter"):

嘗試

if line.startswith("loop_iter"):

我想一旦將match.group(1)轉換為整數,就可以使用它。

import sys
import re

input_file = open(r'C:\infile')
pat_file_read = input_file.read()

for line in input_file_read:
    match = re.search("loop_iter\s*(\d+)" , input_file_read)
    i = int(match.group(1))

for x in range i:
    print 'something' 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM