美文网首页程序员
编程小白是这样用python把唐诗玩坏的

编程小白是这样用python把唐诗玩坏的

作者: 跟我学语文 | 来源:发表于2016-04-05 01:02 被阅读1666次

    最近对编程比较感兴趣,于是请教程序猿朋友们,最后都推荐我学习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,最近才来到简书,喜欢的话可以点喜欢支持我哦!喜欢我的文章可以关注我,我会每天都坚持更新的!

    相关文章

      网友评论

        本文标题:编程小白是这样用python把唐诗玩坏的

        本文链接:https://www.haomeiwen.com/subject/ayhplttx.html