Python綜合應(yīng)用題_第1頁
Python綜合應(yīng)用題_第2頁
Python綜合應(yīng)用題_第3頁
Python綜合應(yīng)用題_第4頁
Python綜合應(yīng)用題_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1.笑傲江湖是金庸的重要武俠作品之一。這里給出一個笑傲江湖的網(wǎng)絡(luò)版本,文件名為“笑傲江湖-網(wǎng)絡(luò)版.txt”。問題1:請編寫程序,統(tǒng)計(jì)該文件中出現(xiàn)的所有中文字符及標(biāo)點(diǎn)符號的數(shù)量,每個字符及數(shù)量之間用冒號:分隔,例如“笑:1024”,將所有字符及數(shù)量的對應(yīng)采用逗號分隔,以CSV文件格式保存到“笑傲江湖-字符統(tǒng)計(jì).txt”文件中。注意,統(tǒng)計(jì)字符不包括空格和回車。問題2:請編寫程序,統(tǒng)計(jì)“笑傲江湖-網(wǎng)絡(luò)版.txt”中出現(xiàn)在引號內(nèi)所有字符占文本總字符的比例,采用如下方式打印輸出:用程序運(yùn)行結(jié)果的真實(shí)數(shù)字替換上述示例中數(shù)字,均保留整數(shù),字符串中標(biāo)點(diǎn)符號采用中文字符。參考代碼:問題1fi = open(笑傲

2、江湖-網(wǎng)絡(luò)版.txt, r, encoding=utf-8)fo = open(笑傲江湖-字符統(tǒng)計(jì).txt, w, encoding=utf-8)txt = fi.read()d = for c in txt: dc = d.get(c, 0) + 1del d del dnls = for key in d: ls.append(:.format(key, dkey)fo.write(,.join(ls)fi.close()fo.close()問題2fi = open(笑傲江湖-網(wǎng)絡(luò)版.txt, r, encoding=utf-8)txt = fi.read()cnt = 0flag = F

3、alsefor c in txt: if c = “: flag = True continue if c = ”: flag = False if flag: cnt += 1print(占總字符比例::.0%。.format(cnt/len(txt)fi.close()2.射雕英雄傳是金庸的重要武俠作品之一。這里給出一個射雕英雄傳的網(wǎng)絡(luò)版本,文件名為“射雕英雄傳-網(wǎng)絡(luò)版.txt”。請編寫程序,統(tǒng)計(jì)該文件出現(xiàn)的所有中文詞語及出現(xiàn)次數(shù)(不要求輸出),并輸出按照出現(xiàn)次數(shù)最多的8個詞語。參考代碼:import jiebafi = open(射雕英雄傳-網(wǎng)絡(luò)版.txt, r, encoding=ut

4、f-8)txt = fi.read()fi.close()ls = jieba.lcut(txt)d = for w in ls: dw = d.get(w, 0) + 1for x in n,。!“”:: del dxrst = for i in range(8): mx = 0 mxj = 0 for j in d: if dj mx: mx = dj mxj = j rst.append(mxj) del dmxjprint(,.join(rst)3. 愷撒密碼是古羅馬愷撒大帝用來對軍事情報(bào)進(jìn)行加密的算法,它采用了替換方法對信息中的每一個英文字符循環(huán)替換為字母表序列該字符后面第三個字符,

5、即循環(huán)左移3位,對應(yīng)關(guān)系如下:原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C基礎(chǔ)中文字符的Unicode編碼范圍是0x4e00,0x9fa5,共20902個字符。請以10451位循環(huán)移位數(shù)量,編寫中文文本的類愷撒密碼加解密方法。原文字符P,其密文字符C滿足如下條件:C = ( P + 10451 ) mod 20902解密與加密方法一致,滿足:P = ( C + 10451 ) mod 20902標(biāo)點(diǎn)符號、英文字母不加密。參考

6、代碼:s = input()d =c = 0x4e00for i in range(20902): dchr(i+c) = chr(i+10451) % 20902 + c)print(.join(d.get(c,c) for c in s)7.神雕俠侶是金庸先生在武俠小說創(chuàng)作上的一個里程碑,敘述楊過與小龍女之間的故事。這里給出神雕俠侶的網(wǎng)絡(luò)版本,文件名為“神雕俠侶-網(wǎng)絡(luò)版.txt”。神雕俠侶中出現(xiàn)了很多人物,這里給出 6 個人物名字:楊過、小龍女、李莫愁、裘千尺、郭靖、黃蓉。統(tǒng)計(jì)人物之間的關(guān)聯(lián)關(guān)系,定義一種“親和度”如下:如果某名字后的 100 個詞語出現(xiàn)另外任何一個人名,則該名字親和度加1

7、,如果之后不存在 100 個詞語則停止檢查。參考代碼:import jiebafi = open(神雕俠侶-網(wǎng)絡(luò)版.txt, r, encoding=utf-8)fo = open(神雕俠侶-人名親和度.txt, w, encoding=utf-8)names = 楊過, 小龍女, 李莫愁, 裘千尺, 郭靖, 黃蓉d = for item1 in names: for item2 in names: if item1 != item2: ditem1 + - + item2 = 0txt = fi.read()ls = jieba.lcut(txt)for i in range(len(ls)

8、-100): if lsi in names: for j in range(1,101): if lsi+j!=lsi and (lsi+j in names): dlsi+-+lsi+j += 1 breakols = for key in d: ols.append(:.format(key, dkey)fo.write(,.join(ols)#fo.write(,n.join(ols)fi.close()fo.close()4. 1949年4月23日,中國人民解放軍午夜解放南京,毛澤東同志在清晨獲得消息后寫下七律 人民解放軍占領(lǐng)南京,全文如下:七律 人民解放軍占領(lǐng)南京鐘山風(fēng)雨起蒼黃,百

9、萬雄師過大江。虎踞龍盤今勝昔,天翻地覆慨而慷。宜將剩勇追窮寇,不可沽名學(xué)霸王。天若有情天亦老,人間正道是滄桑。問題1:這是一段由標(biāo)點(diǎn)符號分隔的文本,請編寫程序,以標(biāo)點(diǎn)符號為分隔,將這段文本轉(zhuǎn)換為詩詞風(fēng)格。問題2:編寫程序,以每半句為單位,保留標(biāo)點(diǎn)符號為原順序及位置。輸出格式問題一輸出: 每行30個字符,詩詞居中,每半句一行,去掉所有標(biāo)點(diǎn)。輸出到文件“七律.txt”。問題二輸出: 輸出全文的翻轉(zhuǎn)形式。人間正道是滄桑,天若有情天亦老。(略)參考代碼:問題1s = 鐘山風(fēng)雨起蒼黃,百萬雄師過大江?;⒕猃埍P今勝昔,天翻地覆慨而慷。宜將剩勇追窮寇,不可沽名學(xué)霸王。天若有情天亦老,人間正道是滄桑。line

10、s = for i in range(0,len(s),8): lines += si:i+7.center(30) +nprint(lines)fo = open(七律.txt, w)fo.write(lines)fo.close()問題2s = 鐘山風(fēng)雨起蒼黃,百萬雄師過大江?;⒕猃埍P今勝昔,天翻地覆慨而慷。宜將剩勇追窮寇,不可沽名學(xué)霸王。天若有情天亦老,人間正道是滄桑。ls = for i in range(0,len(s),8): ls.append(si:i+7)ls.reverse()n = 0for item in ls: n = n + 1 if n%2 !=0 : print

11、(item,end=,) else: print(item,end=。n)5. 這里有一個中文文本片段:“今天北京有個好天氣,大家一起去爬山?!痹摼渥臃稚舷聝刹糠?,以逗號和句號分隔。請對該句子進(jìn)行分詞,并以8為隨機(jī)種子,在上下半句分別重新排列組合詞語,并組合輸出10種不重復(fù)的可能。輸出格式上下半句詞語不交叉,每個可能的組合單行輸出,存儲到“句子組合.txt”文件中,格式如下:北京今天有個好天氣,一起大家去爬山。有個好天氣今天北京,一起大家爬山去。參考代碼:import jiebaimport randoms = 今天北京有個好天氣,大家一起去爬山。k = s.find(,)s1 = jieba

12、.lcut(s0:k)s2 = jieba.lcut(sk+1:-1)random.seed(8)lines = while True: line = random.shuffle(s1) random.shuffle(s2) for item in s1: line += item line += , for item in s2: line += item line += 。 if line in lines: continue else: lines.append(line) if len(lines) = 10: breakf = open(句子組合.txt, w)f.write(n.

13、join(lines)f.close()6. 大膽預(yù)測 2018 年至 2020 年我國五個城市的房產(chǎn)價(jià)格走勢如下所示,同時(shí)保存為“price2020.csv”文件。其中,2018/2019/2020 年所列出的數(shù)值為當(dāng)前年份與前一年份的漲跌比。例如,2018 列數(shù)據(jù)是預(yù)測 2018 年房價(jià)以 2017 年價(jià)格為基數(shù)(100)的比值,2019 列數(shù)據(jù)是預(yù)測 2019 年房價(jià)以 2018 年價(jià)格為基數(shù)(100)的比值,2020 列數(shù)據(jù)是預(yù)測 2020 年房價(jià)以 2019 年價(jià)格為基數(shù)(100)的比值。城市2018 2019 2020北京112130140上海123140121廣州9995130深

14、圳10112994沈陽939287請編寫程序,以 2017 年為基數(shù),預(yù)測 2018/2019/2020 年房價(jià)漲跌比,生成一個類似文件,名稱為“price2020a2017.txt”,保留整數(shù)。參考代碼:fi = open(price2020.csv,r,encoding =utf-8)fo = open(price2020a2017.txt,w,encoding=utf-8)ls = for line in fi: line = line.replace(n, ) ls.append(line.split(,)for i in range(1,len(ls): for j in range

15、(1,len(lsi): if lsij.isnumeric(): if j = 1: base = 100 else: base = float(lsij-1) lsij= :.0f.format(base * float(lsij)/100)for row in ls: fo.write(,.join(row) + n)fi.close()fo.close()7. 天龍八部是著名作家金庸的代表作之一,歷時(shí)4年創(chuàng)作完成。該作品氣勢磅礴,人物眾多,非常經(jīng)典。這里給出一個天龍八部的網(wǎng)絡(luò)版本,文件名為“天龍八部-網(wǎng)絡(luò)版.txt”。問題1:請編寫程序,對這個天龍八部文本中出現(xiàn)的漢字和標(biāo)點(diǎn)符號進(jìn)行統(tǒng)計(jì)

16、,字符與出現(xiàn)次數(shù)之間用冒號:分隔,輸出保存到“天龍八部-漢字統(tǒng)計(jì).txt”文件中,該文件要求采用 CSV 格式存儲,參考格式如下(注意,不統(tǒng)計(jì)空格和回車字符):天:100, 龍:110, 八:109, 部:10問題2:請編寫程序,對天龍八部文本中出現(xiàn)的中文詞語進(jìn)行統(tǒng)計(jì),采用 jieba 庫分詞,詞語與出現(xiàn)次數(shù)之間用冒號:分隔,輸出保存到“天龍八部-詞語統(tǒng)計(jì).txt”文件中。參考格式如下(注意,不統(tǒng)計(jì)任何標(biāo)點(diǎn)符號):天龍:100, 八部:10.參考代碼 1fi = open(天龍八部-網(wǎng)絡(luò)版.txt, r, encoding=utf-8)fo = open(天龍八部-漢字統(tǒng)計(jì).txt, w, encoding=utf-8)txt = fi.read()d = for c in txt: dc = d.get(c, 0) + 1del d del dnls = for key in d: ls.append(:.format(key, dkey)fo.write(,.join(ls)fi.close()fo.close()參考代碼 2import jieba

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論