用python玩转数据第三周_用Python玩转数据(三)
1 找人程序(4分)
題目內容:
有5名某界大佬xiaoyun、xiaohong、xiaoteng、xiaoyi和xiaoyang,其QQ號分別是88888、5555555、11111、12341234和1212121,用字典將這些數據組織起來。編程實現以下功能:用戶輸入某一個大佬的姓名后輸出其QQ號,如果輸入的姓名不在字典中則輸出字符串“Not Found”。
程序框架如下:
def?find_person(dict_users,?strU):if?useris?in?thedict:return?user's?QQelse:return?'Not?Found'if?__name__==?"__main__":create?adict?named?dict_usersstrU=??input()print(find_person(dict_users,?strU))
輸入格式:
字符串
輸出格式:
字符串
輸入樣例:
xiaoyun
輸出樣例:
88888時間限制:500ms內存限制:32000kb
def find_person(dict_users, strU):
if strU in dict_users.keys():
userQQ = dict_users[strU]
return userQQ
else:
return 'Not Found'
if __name__ == "__main__":
dict_users={'xiaoyun':'88888','xiaohong':'5555555','xiaoteng':'11111','xiaoyi':'12341234','xiaoyang':'1212121'}
strU = input()
print(find_person(dict_users, strU))
2 統計句子中的詞頻次數(3分)
題目內容:
對于一個已分詞的句子(可方便地擴展到統計文件中的詞頻):
我/是/一個/測試/句子/,/大家/趕快/來/統計/我/吧/,/大家/趕快/來/統計/我/吧/,/大家/趕快/來/統計/我/吧/,/重要/事情/說/三遍/!
可以用collections模塊中的Counter()函數方便地統計詞頻,例如可用如下代碼:
import?collectionss=?"我/是/一個/測試/句子/,/大家/趕快/來/統計/我/吧/,/大家/趕快/來/統計/我/吧/,/大家/趕快/來/統計/我/吧/,/重要/事情/說/三遍/!/"s_list=?s.split('/')[s_list.remove(item)for?itemin?s_listif?itemin?',。!”“']collections.Counter(s_list)這個問題也可以通過字典來解決,請編寫用字典解決本問題的程序,為便于OJ系統自動判斷,程序最后輸出字符串中包含的不同詞的個數。
程序參考框架
def?countfeq(s):...?...return?adictif?__name__==?"__main__":s=?input()...?...s_dict=?countfeq(s)print(len(s_dict.keys()))
輸入格式:
字符串
輸出格式:
整數
輸入樣例(因為oj系統限制,測試用例設為判斷英文單詞個數,請注意英文標點,假設僅包含,和.):
Spring/is/coming/./Spring/is/coming/.
輸出樣例:
3時間限制:500ms內存限制:32000kbdef countfeq(s):
list=s.split('/')
[list.remove(item) for item in list if item in ', . ) :']
dict={}
for i in list:
if i in dict:
dict[i]+=1
else:
dict[i]=1
return dict
if __name__ == "__main__":
s = input()
s_dict = countfeq(s)
print(len(s_dict.keys()))
總結
以上是生活随笔為你收集整理的用python玩转数据第三周_用Python玩转数据(三)的全部內容,希望文章能夠幫你解決所遇到的問題。