style50.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:style50 作者: cs50 项目源码 文件源码
def __init__(self, code):
        self.original = code

        comments = self.count_comments(code)

        try:
            # Avoid warning about comments if we don't knowhow to count them.
            self.comment_ratio = 1. if comments is None else comments / self.count_lines(code)
        except ZeroDivisionError:
            raise Error("file is empty")

        self.styled = self.style(code)

        # Count number of differences between styled and unstyled code (average of added and removed lines).
        self.diffs = sum(d[0] == "+" or d[0] == "-"
                         for d in difflib.ndiff(code.splitlines(True), self.styled.splitlines(True))) / 2

        self.lines = self.count_lines(self.styled)
        try:
            self.score = 1 - self.diffs / self.lines
        except ZeroDivisionError:
            raise Error("file is empty")
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号