Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- folderPath = "E:/_PythonSuli/0413/homeworks/"
- textfile = "The Adventures of Sherlock Holmes.txt"
- mydocument = folderPath + textfile
- with open(mydocument, "r") as f:
- mytext = str(f.read())
- if len(mytext) == 0:
- print("file is empty")
- else:
- numberOfWords = len(mytext.split(" ")) # ez így szebb!
- character = (len(mytext.replace(" ", ""))) #karakterek száma
- mytext2 = mytext.replace("\n", " ")
- listOfWords = [ word for word in mytext2.split(" ") if len(word)>3]
- # itt készítünk egy dictionary-t ahol a kulcs a szó a value pedig az előfordulások száma.
- mydic = {}
- for i in listOfWords:
- if not i in mydic:
- mydic[i] = 1
- else:
- mydic[i] += 1
- # készítek egy listát ahol a három legnagyobb érték szerepel az első helyen
- largestNumbers = sorted(mydic.values(), reverse=True)[:3]
- # Most hogy megvan a három legnagyobb szám megkeresem az ezekhez tartozó kulcsokat a dictionary-ban.
- commonWords = []
- for num in largestNumbers:
- commonWords.append('{}:{}'.format(list(mydic.keys())[list(mydic.values()).index(num)], num))
- statfile = "Szavak száma: {}\nKarakterek száma (szóköz nélkül): {}\nA három leggyakoribb " \
- "szó: {}, {}, {}".format(numberOfWords,character,commonWords[0],commonWords[1],commonWords[2])
- with open(folderPath + "statistics.txt", "w") as f:
- f.write(statfile)
- print(statfile)
Advertisement
Add Comment
Please, Sign In to add comment