Pythonでテキストファイルに数字を保存する方法は? [閉鎖]

Pythonでテキストファイルに数字を保存する方法は? [閉鎖]

「width:」という行の数字を抽出する必要があるテキストファイルがあります。例: width: 3432

今私は努力しています:

        import re
        file = open('abc.txt', 'r')
        lines = file.readlines()
        WIDTH=lines[10]
        numbers = re.findall(r"[-+]?\d*\.\d+|\d+", WIDTH)
        print(numbers)

['3432']を返します。 3432を取得するには、Pythonでint変数としてどのように保存できますか?

答え1

努力awktr

awk -F"[][]" '{print $2}' file 

または

grep

grep -Po "(?<=\[).[0-9].*?(?=\])" file

または

存在するpython

#!/bin/python    
import re

str = open('file.txt', 'r').read()    
m = re.search(r"\[([A-Za-z0-9_]+)\]", str)
print m.group(1)

答え2

実行したい操作の説明に基づいて、これに正規表現を使用する必要はありません。 Pythonを使用str.startswithして興味のない行をフィルタリングし、メソッドを使用してstr.split興味のある部分を取得し、その値をコンストラクタint()に渡して文字列を整数に変換できます。

for line in open('abc.txt').readlines():
    if line.startswith('width:'):
        number = int(line.split()[-1])

print(number)

関連情報