作为一个爱好项目和一个学习练习,我决定在 Python 中实现一个软件代码行测量脚本。
但是,我有一个问题:
- 测量中是否包含评论?
- 我遵循的方法是:打开文件,从头到尾读取,计算行数。如果要忽略注释,请跳过该行,否则继续并递增计数器。这是这样做的吗?
请注意,我知道那里存在许多工具,并且可能比我的更好,(sloccount
是一个例子),但是我这样做是作为一个完全的爱好者程序。
作为一个爱好项目和一个学习练习,我决定在 Python 中实现一个软件代码行测量脚本。
但是,我有一个问题:
请注意,我知道那里存在许多工具,并且可能比我的更好,(sloccount
是一个例子),但是我这样做是作为一个完全的爱好者程序。
您通常不会将评论视为一行代码 - 但这本身就是一个有用的指标,所以也许您应该在解析文件时保留它们的数量。
您最好检查不是空格的行,并以没有行继续字符的 CRLF 结尾。在正则表达式中,这意味着您要避免这样的行(假设反斜杠是您的行继续字符):
\\\s*\n\r
如果您发现这样的行,请不要增加计数器。当然,正则表达式可能会根据您使用的语言(引擎)而有所不同,并且使用正则表达式甚至可能不是最合适的方法 - 简单的状态引擎可能会更好。
使用简单的 bash 命令不可能吗,在 Python 脚本中使用该 bash 命令,导入 os 和命令 :)