Python 2、ConfigParser:获取a的行号section/option
Python 2, ConfigParser: retrieving the line number of a section/option
包 "ConfigParser" 中有没有办法获取解析器读取特定部分或键的行号?
INI-文件
[section1]
option1=3
option2=4
[section2]
option3=right
即returns section1 (lineNo 1) 或 option3 (lineNo 5) 的行号的方法。
据我所知,python 的 ConfigParser 不会跟踪行号。
你可以通过阅读源代码说服自己。这里 link 到 ConfigParser
的源代码来自 python 2.7.9:https://hg.python.org/cpython/file/648dcafa7e5f/Lib/ConfigParser.py
以及 python 3.4 中的源代码(撰写本文时的最新提交):https://hg.python.org/cpython/file/516d3773ecb2/Lib/configparser.py
读取文件由 read()
或 readfp()
完成。两者都只是 _read()
的包装器。方法 _read()
确实跟踪变量 lineno
中的行号,但据我所知 lineno
仅用于报告错误。
以下是替代配置解析器的概述:https://wiki.python.org/moin/ConfigParserShootout
通过快速搜索,似乎只有 INITools 跟踪行号。
我不知道 wiki 中的信息有多新。
包 "ConfigParser" 中有没有办法获取解析器读取特定部分或键的行号?
INI-文件
[section1]
option1=3
option2=4
[section2]
option3=right
即returns section1 (lineNo 1) 或 option3 (lineNo 5) 的行号的方法。
据我所知,python 的 ConfigParser 不会跟踪行号。
你可以通过阅读源代码说服自己。这里 link 到 ConfigParser
的源代码来自 python 2.7.9:https://hg.python.org/cpython/file/648dcafa7e5f/Lib/ConfigParser.py
以及 python 3.4 中的源代码(撰写本文时的最新提交):https://hg.python.org/cpython/file/516d3773ecb2/Lib/configparser.py
读取文件由 read()
或 readfp()
完成。两者都只是 _read()
的包装器。方法 _read()
确实跟踪变量 lineno
中的行号,但据我所知 lineno
仅用于报告错误。
以下是替代配置解析器的概述:https://wiki.python.org/moin/ConfigParserShootout
通过快速搜索,似乎只有 INITools 跟踪行号。
我不知道 wiki 中的信息有多新。