⑴ 題目python編寫程序,統計jianjie.txt文件中各字詞出現的次數,用於字典存儲
下面是一個 Python 程序,可以實現統計 jianjie.txt 文件中各字詞出現閉伍的次數,並使用字典存儲結果。
在這個程序中,或絕我們首先讀入 jianjie.txt 文件的內容,然後使用 split 函數將其分割成一個個字詞。接著,我們遍歷每一個字詞,並使用字典存儲它們出現的次數。最後,我們輸出字典即可得到統計結果。
希望這對你衫態姿有幫助!
⑵ 用python寫一個單詞推薦系統
實現一個簡單的單詞推薦系統,可以使用如下步談畢驟:
1. 准備單詞列表和輸入單詞
首先准備一個單詞列表,用於查找相似單詞。然後輸入用戶要查詢的單詞。
words = ['apple', 'banana', 'cherry', 'date', 'elderberry', 'fig', 'grape', 'honeydew', 'kiwi', 'lemon']
query = input("Please enter a word: ")
2. 計算單詞間的相似度
可以使用如下的餘弦相似度公式計算兩個單詞之間的培侍棚相似度:
$similarity = frac{sum_{i=1}^{n} a_i imes b_i}{sqrt{sum_{i=1}^{n} a_i^2} imes sqrt{sum_{i=1}^{n} b_i^2}}$
其中,$a_i$ 和 $b_i$ 分別表示兩個單詞的向量表示中第 $i$ 個元素的值。
在這里,我們採用單詞向量的方法,將每個單詞表示為一個向量。向量的每個元素表示單詞中每個字母的出現次數。
定義一個函數,用於計算兩個單詞之間的相似度:
import math
def compute_similarity(word1, word2):
vector1 = [0] * 26
vector2 = [0] * 26
# 統計每個單詞中每個字母的出現次數
for char in word1:
vector1[ord(char) - ord('a')] += 1
for char in word2:
vector2[ord(char) - ord('a')] += 1
# 計算餘弦相似度
dot_proct = sum([vector1[i] * vector2[i] for i in range(26)])
magnitude1 = math.sqrt(sum([x ** 2 for x in vector1]))
magnitude2 = math.sqrt(sum([x ** 2 for x in vector2]))
similarity = dot_proct / (magnitude1 * magnitude2)
return similarity
3. 查找相似單詞
遍歷單詞配則列表,計算每個單詞與輸入單詞的相似度,並將相似度保存在字典中。然後將字典按照相似度從大到小排序,輸出前五個相似的單詞。
similarities = {}
for word in words:
similarities[word] = compute_similarity(query, word)
similarities = {k: v for k, v in sorted(similarities.items(), key=lambda item: item[1], reverse=True)}
print("The recommended words are: ")
count = 0
for key in similarities.keys():
if count >= 5:
break
if key != query:
print(key)
count += 1
示例輸出結果:
Please enter a word: banan
The recommended words are:
banana
lemon
apple
kiwi
grape
注意:這只是一個簡單的單詞推薦系統示例,實際應用中可能需要使用更復雜的演算法或數據結構來實現,以達到更好的推薦效果。
希望我的回答能夠幫助到您!
⑶ python中,怎麼做個字典,數句子中單詞出現的次數
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的強大在於簡明,遇到程序嘗試著用最簡單地方法去解決,你會很快喜歡上的。
以上^樂於與您交流
⑷ python字典類型的英文單詞是什麼
python字典類型的英文單詞是:dict。
在Python中,字典這種數據類型的英文叫做 「dict」,有的語言里它的名稱是 「hash」。字典是編程中最常用的數據結構之一。它是用來做映射或者存儲你需要的鍵值對,這樣當你需要的時候,你可以通過key來獲取它的值。
同樣,程序員不會使用一個像「字典」這樣的術語,來稱呼那些不能像一個寫滿詞彙的真實字典正常使用的事物,所以我們只要把它當做真實世界中的字典來用就好。
字典與列表的區別
針對列表你可以做這樣的事情:
>>> things = ['a', 'b', 'c', 'd']
>>> print things[1]
b >>> things[1] =
'
z'
>>> print things[1]
z >>> things
['a', 'z', 'c', 'd']
你可以使用數字作為列表的索引,也就是你可以通過數字找到列表中的元素。你現在應該了解列表的這些特性,而你也應了解,你也只能通過數字來獲取列表中的元素。而 dict是讓你可以通過任何東西找到元素,不只是數字。是的,字典可以將一個物件和另外一個東西關聯,不管它們的類型是什麼。
⑸ 用Python任意輸入三個英文單詞,按字典順序輸出。怎麼寫
words=raw_input("pleaseinputthreewords")
printsorted(words.split())
例如:
a = str(raw_input(u"請輸入用空格分開的單詞:"))
b = a.split()
b.sort()
for i in b:
print i
(5)python字典編程詞彙擴展閱讀:
Python在執行時,首先會將.py文件中的源代碼編譯成Python的byte code(位元組碼),然後再由Python Virtual Machine(Python虛擬機)來執行這些編譯好的byte code。
這種機制的基本思想跟Java,.NET是一致的。然而,Python Virtual Machine與Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一種更高級的Virtual Machine。