最近對編程比較感興趣,于是請教程序猿朋友們,最后都推薦我學習Python。翻看教程幾天后,碰巧遇到有朋友在玩唐詩亂搭的游戲,于是我就寫了一段python程序(對于能否叫程序我一直很懷疑),挑了了很多的混搭詩句,在朋友圈引吐嘈無數。用朋友的話來說,把唐詩給玩壞了!
惡搞一下。圖片來自:gomeart
下面的詩句,都是由不同的詩篇中的句子組合起來的,你可以仔細地讀一讀。很好玩的是,它們幾乎沒有違和感!
獨在異鄉為異客,不知何處是他鄉。
勸君更盡一杯酒,人面桃花相映紅。
停車坐愛楓林晚,任它明月下西樓。
黃沙百戰穿金甲,猶為離人照落花。
借問酒家何處有,多少樓臺煙雨中。
南朝四百八十寺,不知何處是他鄉。
嫦娥應悔偷靈藥,遍插茱臾少一人。
君問歸期未有期,古來征戰幾人回。
行人莫向長堤望,山北山南總是烽。
孤帆遠影碧空盡,回看秋草淚沾巾。
故人西辭黃鶴樓,客散江亭雨未收。
飛流直下三千尺,輕舟已過萬重山。
洛陽親友如相問,不知墻外是誰家。
秦時明月漢時關,不破樓蘭終不還。
喜歡嗎?讓我來分享一下找出這些混搭詩句的方法吧!
首先,我在網頁上找到了唐詩的內容,然后復制粘貼到了“ori_poem.txt”文件中。
這里面都是七言絕句
然后,我寫了一段腳本來處理這個文本,下面是我那扣腳的代碼。
# -*- coding:utf-8 -*-
full_text = []
front_line = []
end_line = []
# 去掉標題
def get_no_title():
f = open('ori_poem.txt','r')
for i in f:
i = i.replace(' ', '')
if len(i) > 15:
full_text.append(i)
f.close()
# 上聯與下聯分離
def get_front_end():
for line in full_text:
front_line.append(line[:7])
end_line.append(line[8:])
# 組合
def get_new_poem():
for line1 in front_line:
for line2 in end_line:
new_poem.write(line1+','+line2)
get_no_title()
get_front_end()
new_poem = open('final_poem.txt','a')
get_new_poem()
new_poem.close()
最后,就是在生成的“final_poem.txt”文件中找合適的詩句啦!
只需要簡單的讀一讀就能選出好句子
簡單粗暴的拼詩大法你get了嗎?選一句混搭詩發到你的朋友圈吸贊吧!效果絕對杠杠滴哦!有更多開腦洞的玩法歡迎和我一起交流!對編程有興趣的朋友也可以和我一起學習哦!
嗨!我是libuo,最近才來到簡書,喜歡的話可以點喜歡支持我哦!喜歡我的文章可以關注我,我會每天都堅持更新的!