python 找出一篇文章中出现次数最多的10个单词

#!/usr/bin/python
#Filename: readlinepy.py

import sys,re
urldir=r"C:\python27\a.txt"
distone={}
numTen=[]

#先文档变成一个字典
f=open(urldir,‘r‘)
for line in f.readlines():
#去掉非字符的符号
    line = re.sub(‘\W‘," ",line)
    lineone=line.split()
    for keyone in lineone:
        if not distone.get(keyone):
            distone[keyone]=1
        else:
            distone[keyone]+=1
f.close()

#整理前10出现的单词的次数

for v in distone.values():
    if v not in numTen:
        numTen.append(v)
numTen.sort()
numTen=numTen[-10:]

#将字典转为列表,其其实这个可以不转。直接遍历也行,之前没有想到同时出现的怎么办。

distone = sorted(distone.iteritems(),key=lambda d:d[1],reverse = True )

#最后遍历,可能出现的次数一样的。

for i in distone:
    if i[1] in numTen:
        print i
时间: 2024-12-14 05:49:31

python 找出一篇文章中出现次数最多的10个单词的相关文章

[PY3]——找出一个序列中出现次数最多的元素/collections.Counter 类的用法

问题 怎样找出一个序列中出现次数最多的元素呢? 解决方案 collections.Counter 类就是专门为这类问题而设计的, 它甚至有一个有用的 most_common() 方法直接给了你答案 collections.Counter 类 1. most_common(n)统计top_n from collections import Counter words = [ 'look', 'into', 'my', 'eyes', 'look', 'into', 'my', 'eyes', 't

1152: 零起点学算法59——找出一个数组中出现次数最多的那个元素

1152: 零起点学算法59--找出一个数组中出现次数最多的那个元素 Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 990  Accepted: 532[Submit][Status][Web Board] Description 找出一个数组中出现次数最多的那个元素 Input 第一行输入一个整数n(不大于20) 第二行输入n个整数 多组数据 Output 找出n个整数中出现次数最多的那个整数(

找出该字符串中出现次数最多的那个字符

/*时间限制 C/C++ 3s 其他 6s, 空间限制 C/C++ 32768k 其他 65535k 题目描述     给定一个长度不限的字符串,请找出该字符串中出现次数最多的那个字符,并打印出该字符及其出现次数; 如果多个字符的出 现次数相同,只打印首个字符;输出字符的大小写格式要与输 入保持一致,大小写不敏感模式下, 输出字符的大小写格式与该 字符首次出现时的大小写格式一致.实现时无需考虑非法输. 输入描述     输入为 字符串大小写敏感标记 其中"大小写敏感标记"为可选参数,取

找出一个数组中出现次数最多的那个元素

#include <stdio.h> int main() { int n,a[20],i,j,flag=0,max; int b[20]={0}; while(scanf("%d",&n)==1){ if(n==0) break; for(i=0;i<n;i++) scanf("%d",&a[i]); for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(a[i]==a[j]) b[i]++

笔试:找出一个字符串中字符出现最多的次数和该字符

我用的是js, 每次取出字符串的第一个字母,然后把和它相同的字符利用“”替换掉,然后来比较替换前和替换后的字符串长度相差多少, 那么差值就是就是里面该字符的个数,找出这个差值最大的就是和所对应的替换字符. var str ="djlxsdjlxs"; //命名一个变量放置给出的字符串 var maxLength = 0; //命名一个变量放置字母出现的最高次数并初始化为0 var result = ''; //命名一个变量放置结果输入 while( str != '' ){ //循环迭

找出1小时内占用cpu最多的10个进程的shell脚本

cpu时间是一项重要的资源,有时,我们需要跟踪某个时间内占用cpu周期最多的进程. 在普通的桌面系统或膝上系统中,cpu处于高负荷状态也许不会引发什么问题.但对于需要处理大量请求的服务器来讲,cpu是极其重要的资源. 通过监视某个时期内cpu的使用情况,我们可以找出长期占用cpu的进程并对其进行优化,或调试其它相关问题. 在linux系统中,ps命令用于收集系统中进程的详细信息.这些信息包括cpu使用情况.正在执行的命令.内存使用.进程状态等.记录在一个小时内占用过的cpu的进程,然后通过恰当地

【python cookbook】【数据结构与算法】12.找出序列中出现次数最多的元素

问题:找出一个元素序列中出现次数最多的元素是什么 解决方案:collections模块中的Counter类正是为此类问题所设计的.它的一个非常方便的most_common()方法直接告诉你答案. # Determine the most common words in a list words = [ 'look', 'into', 'my', 'eyes', 'look', 'into', 'my', 'eyes', 'the', 'eyes', 'the', 'eyes', 'the', '

找出n个字符串中出现次数最多的字符串。

1. 找出n个字符串中出现次数最多的字符串. C/C++: char* find(char **data,int n); Java: String find(String data[]); 说明: 1. data是字符串数组,n是数组中字符串的个数,返回值为出现次数最多的字符串. 2. 若结果有多个,返回任意一个即可 3. 不得使用任何库函数/API,如需使用类似功能, 请自行实现 4. 算法效率尽可能高,尽量少的使用内存空间 5. 必须要有代码注释和算法说明. 例如:data里面的数据是{“p

找出一个字符串中最长重复次数的子字符串,并计算其重复次数

原题 找出一个字符串中最长重复次数的子字符串,并计算其重复次数.例如:字符串"abc fghi bc kl abcd lkm abcdefg",并返回"abcd"和2. 我的思路 为了方便表述,我们使用变量src作为原字符串,sub_str作为子字符串. 由于题目要求寻找至少重复2次的最长的子字符串,重点在于最长的子字符串,而不在于重复的最多次数.因此我们可以从长度最长的字符串入手,计算其重复次数.只要重复达到2次,即可返回该字符串. 显然长度最长的子字符串就是原串