Maison > Article > développement back-end > Fonction de statistiques de texte Python : Journey to the West utilise des opérations de statistiques de mots
Cet article présente principalement l'opération de statistiques de mots de Journey to the West, une fonction de statistiques de texte de Python, et analyse les compétences opérationnelles associées telles que la lecture de texte Python, la traversée et les statistiques sous forme d'exemples. Les amis dans le besoin peuvent se référer. à cela
L'exemple de cet article décrit le fonctionnement des statistiques de mots de la fonction de statistiques de texte Python Journey to the West. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
1. Données
xyj.txt, le texte de "Journey". vers l'Ouest", 2,2MB
Hommage à Maître Wu Chengen, 4020 lignes (paragraphes)
2. Objectifs
Statistiques dans "Voyage vers l'Ouest" :
1. Combien de caractères chinois différents apparaissent au total
2. Combien de fois chaque caractère chinois apparaît le plus ; fréquemment.
3. Contenu impliqué :
1. Utilisation du dictionnaire ; ;4. Écrire le fichier
5. Code source
# coding:utf8 import sys reload(sys) sys.setdefaultencoding("utf8") fr = open('xyj.txt', 'r') characters = [] stat = {} for line in fr: # 去掉每一行两边的空白 line = line.strip() # 如果为空行则跳过该轮循环 if len(line) == 0: continue # 将文本转为unicode,便于处理汉字 line = unicode(line) # 遍历该行的每一个字 for x in xrange(0, len(line)): # 去掉标点符号和空白符 if line[x] in [' ','', '\t', '\n', '。', ',', '(', ')', '(', ')', ':', '□', '?', '!', '《', '》', '、', ';', '“', '”', '……']: continue # 尚未记录在characters中 if not line[x] in characters: characters.append(line[x]) # 尚未记录在stat中 if not stat.has_key(line[x]): stat[line[x]] = 0 # 汉字出现次数加1 stat[line[x]] += 1 print len(characters) print len(stat) # lambda生成一个临时函数 # d表示字典的每一对键值对,d[0]为key,d[1]为value # reverse为True表示降序排序 stat = sorted(stat.items(), key=lambda d:d[1], reverse=True) fw = open('result.csv', 'w') for item in stat: # 进行字符串拼接之前,需要将int转为str fw.write(item[0] + ',' + str(item[1]) + '\n') fr.close() fw.close()
Recommandations associées :
Extraction de fonctionnalités de texte Python et vecteur détaillé explication des exemples d'apprentissage d'algorithmes
Explication détaillée de la distance d'édition pour le calcul de similarité de texte Python
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!