python中,怎么做个字典,数句子中单词出现的次数?
写个字典程序,数句子中出现相同单词的次数.Usingadictionary,createaprogramthatcountsthenumberoftimesawordap...
写个字典程序,数句子中出现相同单词的次数.
Using a dictionary, create a program that counts the number of times a word appears in a sentence. You should use a key to represent the word; the value should be the word count. Your program should first prompt the user for a sentence. You can ask for the input and split the sentence into separate words using the following code:
text=raw_input("Enter a sentence:")
words=text.split()
The variable words will then contain a list of all the words in the sentence. 展开
Using a dictionary, create a program that counts the number of times a word appears in a sentence. You should use a key to represent the word; the value should be the word count. Your program should first prompt the user for a sentence. You can ask for the input and split the sentence into separate words using the following code:
text=raw_input("Enter a sentence:")
words=text.split()
The variable words will then contain a list of all the words in the sentence. 展开
2个回答
展开全部
text = raw_input("enter a sentence:")
words = text.split()
wordscount = [words.count(elem) for elem in words]
worddict={map(None,words,wordscount)}
要完成你的目标:
我要
计算每个词语出现的次数,
把词语出现的次数和词语列表组合成字典;
伪代码出来了,程序也就有了....
python有着强大的列表解析,内建模块使用C完成,他们很快,所以能够调用内建模块你就不要自己多事。
尽量按照伪代码去完成程序,除非必须细化,否则让python为你操作低层吧,他很聪明
第三句释义:
对于列表元素计数有很简单的list.count()方法。
这个语句就是利用了这个,statement for element in list fileter expression这是list的解析式。
通过这个你可以方便的将一个list解析为另一个。这一句就对list中所有的元素运用count()方法,并且建立新的list。
另外一个例子:a=[2,3,4,7,8]找到这个list中的偶数,并得到它们的平方列表
这样写:[elem*elem for elem in a if elem%2==0]
第四句释义:
list有个map方法,它可以提供list的映射。map(statement,list1,list2)就是将list1,list2按照statement规则映射。我的表达式是none所以得到的结果就是简单的[('this', 3), ('is', 4), ('a', 1)]这样的二元tuple列表。
dict函数则是针对上述list的。它能把上述list转化为字典。
这在你做数据处理时很有好处,你可以很轻松的建立一个hash表。
python的强大在于简明,遇到程序尝试着用最简单地方法去解决,你会很快喜欢上的。
以上^乐于与您交流
words = text.split()
wordscount = [words.count(elem) for elem in words]
worddict={map(None,words,wordscount)}
要完成你的目标:
我要
计算每个词语出现的次数,
把词语出现的次数和词语列表组合成字典;
伪代码出来了,程序也就有了....
python有着强大的列表解析,内建模块使用C完成,他们很快,所以能够调用内建模块你就不要自己多事。
尽量按照伪代码去完成程序,除非必须细化,否则让python为你操作低层吧,他很聪明
第三句释义:
对于列表元素计数有很简单的list.count()方法。
这个语句就是利用了这个,statement for element in list fileter expression这是list的解析式。
通过这个你可以方便的将一个list解析为另一个。这一句就对list中所有的元素运用count()方法,并且建立新的list。
另外一个例子:a=[2,3,4,7,8]找到这个list中的偶数,并得到它们的平方列表
这样写:[elem*elem for elem in a if elem%2==0]
第四句释义:
list有个map方法,它可以提供list的映射。map(statement,list1,list2)就是将list1,list2按照statement规则映射。我的表达式是none所以得到的结果就是简单的[('this', 3), ('is', 4), ('a', 1)]这样的二元tuple列表。
dict函数则是针对上述list的。它能把上述list转化为字典。
这在你做数据处理时很有好处,你可以很轻松的建立一个hash表。
python的强大在于简明,遇到程序尝试着用最简单地方法去解决,你会很快喜欢上的。
以上^乐于与您交流
展开全部
words 已经得到了,用一个 word_dict 当作 map 统计频度就可以了:
text = raw_input("Enter a sentence:")
words = text.split()
word_dict = {}
for w in words:
if w not in word_dict:
word_dict[w] = 1
else:
word_dict[w] = word_dict[w] + 1
print word_dict
text = raw_input("Enter a sentence:")
words = text.split()
word_dict = {}
for w in words:
if w not in word_dict:
word_dict[w] = 1
else:
word_dict[w] = word_dict[w] + 1
print word_dict
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询