def begint_met_klinker(woord): if len(woord) != 0: if woord[0] in {'a','A','e','E','i','I','o','O','u','U'}: return True else: return False return False def begint_met_medeklinker(woord): if len(woord) != 0: medeklinkers = set(c for c in "bcdfghjklmnpqrstvwxyz") woord = woord.lower() if woord[0] in medeklinkers: return True else: return False return False def eindigt_op_medeklinker(woord): if len(woord) != 0: medeklinkers = set(c for c in "bcdfghjklmnpqrstvwxyz") woord = woord.lower() if woord[len(woord) - 1] in medeklinkers: return True else: return False return False def eindigt_op_klinker(woord): if len(woord) != 0: if woord[len(woord) - 1] in {'a','A','e','E','i','I','o','O','u','U'}: return True else: return False return False def kortste_woord_begint_met_klinker(lijst): if len(lijst) != 0: lijst = list(w for w in lijst if begint_met_klinker(w)) return min(lijst, key = lambda w : len(w)) def langste_woord_eindigt_op_klinker(lijst): if len(lijst) != 0: lijst = list(w for w in lijst if eindigt_op_klinker(w)) return max(lijst, key = lambda w : len(w)) def kortste_woord_begint_met_medeklinker(lijst): if len(lijst) != 0: lijst = list(w for w in lijst if begint_met_medeklinker(w)) return min(lijst, key = lambda w : len(w)) def langste_woord_eindigt_op_medeklinker(lijst): if len(lijst) != 0: lijst = list(w for w in lijst if eindigt_op_medeklinker(w)) return max(lijst, key = lambda w : len(w)) f_invoer = open("woordenlijst_invoer.txt") f_uitvoer = open("uitvoer.txt","w") tekst = f_invoer.read() tekst = tekst.replace("\n"," ") lijst = tekst.split(" ") woord1 = langste_woord_eindigt_op_klinker(lijst) f_uitvoer.write("Het langste woord dat eindigt op een klinker is: " + woord1 + "\n") woord2 = langste_woord_eindigt_op_medeklinker(lijst) f_uitvoer.write("Het langste woord dat eindigt op een medeklinker is: " + woord2 + "\n") woord3 = kortste_woord_begint_met_klinker(lijst) f_uitvoer.write("Het kortste woord dat begint met een klinker is: " + woord3 + "\n") woord4 = kortste_woord_begint_met_medeklinker(lijst) f_uitvoer.write("Het kortste woord dat begint met een medeklinker is: " + woord4 + "\n") aantal_klinkers = 0 for c in set(c for c in {'a','A','e','E','i','I','o','O','u','U'}): aantal_klinkers += tekst.count(c) f_uitvoer.write("Het aantal gebruikte klinkers is: " + str(aantal_klinkers) + "\n") aantal_medeklinkers = 0 tekst = tekst.lower() for c in set(c for c in "bcdfghjklmnpqrstvwxyz"): aantal_medeklinkers += tekst.count(c) f_uitvoer.write("Het aantal gebruikte medeklinkers is: " + str(aantal_medeklinkers) + "\n") f_uitvoer.close() f_invoer.close()