Theo έγραψε:
Μία άλλη λύση μπορεί να γίνει με την Counter από τα collections
>>> from collections import Counter
>>> text = 'Καλημέρα Νίκο τι κάνεις καλά and English ara welcome'
>>> Counter((char for char in text if char.isalpha()))
Counter({'α': 3, 'κ': 3, 'a': 3, 'λ': 2, 'ι': 2, 'ά': 2, 'n': 2, 'l': 2, 'e': 2, 'Κ': 1, 'η': 1, 'μ': 1, 'έ': 1, 'ρ': 1, 'Ν': 1, 'ί': 1, 'ο': 1, 'τ': 1, 'ν': 1, 'ε': 1, 'ς': 1, 'd': 1, 'E': 1, 'g': 1, 'i': 1, 's': 1, 'h': 1, 'r': 1, 'w': 1, 'c': 1, 'o': 1, 'm': 1})
>>>
Ωραίος φίλε, μου άρεσε ο κώδικας σου με τη χρήση των collections.
@nickpsal
Θα σου πρότεινα πολύ φιλικά, να γράφεις αυτό που θες απλά, ξεκάθαρα και αναλυτικά.
Επίσης πολύ φιλικά, εδώ ήμαστε ένα φόρουμ με κινά ενδιαφέρονται και όρεξη για συνεργασία, δεν είναι μια σελίδα παραγγελιών.
Δείξε πως έχεις κάνει κάτι, πως έστω προσπαθείς και μετά ζήτα βοήθεια.
Επίσης κατά την άποψη μου, δεν είναι και τίποτα να γράψει κάποιος κώδικα ο οποίος θα υπολογίζει αυτά που λες.
Το να θεωρείς το κάθε γράμμα πως είναι το ίδιο είτε κεφαλαίο είτε μικρό, επίσης δεν είναι δύσκολο αφού έχουν σταθερή αριθμητική απόσταση μεταξύ του.
Η μπορείς να τα μετατρέπεις όλα αρχικά σε μικρά (
με την μέθοδο lower() ) και έπειτα να κάνεις τους υπολογισμούς σου (
με τους τόνους θέλει ίσος λίγο περισσότερη σκέψη και πρώτα μια δοκιμή ).
Εντελώς φιλικά.