Skip to main content
Source Link
gimix
  • 3.8k
  • 2
  • 8
  • 28

import json

def pangrams(filename):
    alphabet = set('abcdefghijklmnopqrstuvwxyz')
    no_pangrams = 0
    pangrams = 0
    perf_pangrams = 0
    content = json.load(open(filename, 'r'))
    for line in content:
        line = line.strip().lower()
        if len(line) < 26 or not alphabet <= set(line): #cannot be a pangram
            no_pangrams += 1
        else: #is a pangram, check if perfect
            visited = set()
            for char in line:
                if char in alphabet:
                    if char in visited:
                        pangrams += 1
                        break
                    visited.add(char)
            else:
                perf_pangrams += 1
    return no_pangrams, pangrams, perf_pangrams

Returns: (819, 132, 49)