2019独角兽企业重金招聘Python工程师标准>>>

托某奇艺选秀节目的福,“嘻哈”无疑是这个夏天最热的音乐标签。年初的时候,我们教室实习生小D还是网易云上一只忧郁的民谣狗(参见 数据分析:当赵雷唱民谣时他唱些什么?)。没想到一夜之间,他的歌单已被HipHop占据,俨然一只黑怕老炮儿。

这对小D来说可谓一大利好:本来报个吉他班,学了仨月才把1645摸熟,如今去淘宝了一把嘻哈四件套,找段beat,药药切克闹,就嗨起来啦!

小D underground听多了就想找人battle。隔壁老王他早就不爽了,这次一定要写段词来diss他!但像小D这么real的rapper是绝对不屑套别人的词的,这可难为坏他小学及格的作文水平了。

小D一连几天闷头在纸上写写画画,也没憋出来几句。我实在看不下去了,不就是写点押韵的词嘛,交给哥来帮你搞定。小D一脸鄙夷:你还会写歌词?我微微一笑:词我是写不了,但我们会什么?编程啊!都什么时代了,还要靠人力嘛。

我的想法很简单:就是找些嘻哈歌手的歌词,把里面的词语都拿出来。当想要写一段歌词时,只要给一个参考词,就帮你找出押韵的备选词。当然太简单的单字押韵我都懒得列出来了,咱们要做就做双押和三押!

说干就干!

1.拿网易云的接口,抓了十几位中文嘻哈歌手的歌单,包括:

红花会、PGone、VaVa、艾福杰尼、BooM黄旭、Bridge、GAI爷、TizzyT、JonyJ、小青龙、辉子、孙八一、谢帝、马思维、满舒克、Mc光光

import requests
url = 'http://music.163.com/api/playlist/detail?id=402614161'
req = requests.get(url)
data = req.json()

2.把他们的歌词全抓下来,共 459 首歌曲

import requests
url = 'http://music.163.com/api/song/lyric?os=pc&id=411988938&lv=-1&kv=-1&tv=-1'
req = requests.get(url)
data = req.json()

3.用我们之前介绍过的结巴分词(参见【编程课堂】jieba-中文分词利器),把歌词处理下,分成一个个的词语,得到 21206 个词

import jieba
seg_list = jieba.cut("我做的说唱从来不是为了混这圈子", cut_all=True)
print("Full Mode: " + "/ ".join(seg_list))
'''
结果
Full Mode: 我/ 做/ 的/ 说唱/ 从来/ 从来不/ 不是/ 为了/ 混/ 这/ 圈子
'''

4.用 xpinyin 将处理出来的词语转成拼音

from xpinyin import Pinyin
p = Pinyin()
print(p.get_pinyin(u"嘻哈"))
'''
xi-ha
'''

5.有了拼音就好办了。从网上找个押韵表,把这些嘻哈词语分门别类,就大告功成啦。最后得到 2845 个双押及三押的备选词汇

一、佳麻  a ia ua   第十部 麻、佳半,部分入声
二、开来  ai uai    第五部 佳半、灰半
三、先寒  an ian uan üan 第七部 寒删先元半十四部覃盐咸
四、江阳  ang iang uang 第二部 江阳
五、逍遥  ao iao     第八部 萧肴豪
六、国歌  e o uo    第九部 歌,部分入声
七、灰微  ei ui   第三部 支微齐,部分入声
八、森林  en in un ün  第六部 真文元半,十三部 侵
九、冬青  eng ing ong iong 第一部 东冬,十一部 庚青蒸
十、希奇(儿)i(er并入) 第三部 支微齐,部分入声
十一、诗词 i(整体认读)第三部 支微齐,部分入声
十二、别叠 ie (y)e      部分入声,佳麻二韵部分字
十三、忧愁 ou iu     十二部 尤
十四、读书 u      第四部 鱼虞,部分入声
十五、须臾 ü       第四部 鱼虞,部分入声
十六、绝学 üe      部分入声

6.最后,用django搭个网站,把这功能做成可在线访问的

接下来,小D要做的事就只剩下:想一个词,然后去搜一下有什么其他词跟它配。比如要diss老王,搜一下“老王”:

于是小D就写下了:
隔壁老王,你不要嚣张,放学之后给我等在操场

实在太方便啦!

如果你也想来首自己的嘻哈,点击这里,进入网站自个儿玩儿去吧!

想要完整代码及详细讲解的,请在公众号(Crossin的编程教室)里回复 嘻哈

最后,本人亲自演示,如何用搜出来的双押词汇加上一段简单beat做出一段嘻哈歌曲。

https://www.zhihu.com/video/888055148159602688

多谢各位homie支持,别忘了转发文章以及给我的知乎专栏点赞!

════

其他文章及回答:

听说你好不容易写了个爬虫,结果没抓几个就被封了? 喏,你们要的 PyCharm 快速上手指南 编程新手:看懂很多示例,却依然写不好一个程序 给伸手党的福利:Python 新手入门引导 如何用100行Python代码做出魔性声控游戏“八分音符酱” 学习编程的过程中可能会走哪些弯路,有哪些经验可以参考? 你是如何自学 Python 的?

Crossin的编程教室

微信公众号ID:crossincode
网站: crossincode.com

转载于:https://my.oschina.net/crossin/blog/1844750

Python有嘻哈:Crossin教你用代码写出押韵的verse相关推荐

  1. Python有嘻哈:Crossin教你用代码写出押韵的verse 1

    托某奇艺选秀节目的福,"嘻哈"无疑是这个夏天最热的音乐标签.年初的时候,我们教室实习生小D还是网易云上一只忧郁的民谣狗.没想到一夜之间,他的歌单已被HipHop占据,俨然一只黑怕老 ...

  2. Python编曲实践(八):我,乔鲁诺·乔巴那,能用两百行代码写出JOJO黄金之风里我自己的出场曲!

    前言 前些天笔者写的文章 Python编曲实践(七):整整一百行Python代码写出黑人抬棺梗曲<Astronomia>的旋律 受到了大家的许多支持和好评,本篇文章挑战更复杂.更有挑战性, ...

  3. 如何用PYTHON代码写出音乐

    如何用PYTHON代码写出音乐 什么是MIDI 博主本人虽然五音不全,而且唱歌还很难听,但是还是非常喜欢听歌的.我一直在做这样的尝试,就是通过人工智能算法实现机器自动的作词和编曲(在这里预告下,通过深 ...

  4. python怎么实现音乐快进_如何用PYTHON代码写出音乐【】

    如何制作MIDI(用于vocaloid 3) 我也是因为V家才来找midi的 如何用PYTHON代码写出音乐 在python-midi,每个乐谱用Pattern对象表示,乐的每个音轨(通常音乐很多轨道 ...

  5. 用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

    活动地址:CSDN21天学习挑战赛 用代码写出浪漫合集(爱心.玫瑰花)       本文目录: ​一.前言 二.用python.matplotlib.Matlab.java绘制爱心 (1)爱心图形1( ...

  6. python写出的程序如何给别人使用-如何用PYTHON代码写出音乐

    什么是MIDI 博主本人虽然五音不全,而且唱歌还很难听,但是还是非常喜欢听歌的.我一直在做这样的尝试,就是通过人工智能算法实现机器自动的作词和编曲(在这里预告下,通过深度学习写歌词已经实现了,之后会分 ...

  7. 中软python编码规范考试试题_卓越分享 | 如何写出一手漂亮的Python代码?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Python语言这么火,有很多同学是从其他语言转行过来的(比如c++,java语言),多多少少写代码的时候也会受其他语言的影响!而对于刚开始学编程的小白同 ...

  8. python open方法1001python open方法_怎样才能写出 Pythonic 的代码 #P1001#

    L = [ i*i fori inrange(5) ] forindex, data inenumerate(L, 1):print(index, ':', data) 去除 import 语句和列表 ...

  9. 【python表白神器】手把手教你用代码浪漫追求对象!(附完整源码+讲解)

    文章目录 一.前言 二.演示看效果! 三.网站制作 四.部署网站 五.二维码制作 六.强烈推荐系列教程,建议学起来!! 七.总结 一.前言 跟着我做,做成功就去表白,不介意的话表白成功给我打个赏.第一 ...

最新文章

  1. cat--创建多维数组
  2. 案例:用户登录界面最全详解(JavaWeb)
  3. 工程师最重要的能力是什么
  4. 《零基础看得懂的C++入门教程 》——(4)条件判断原来如此
  5. uboot烧录到SD卡
  6. (转)服务器控件三个ID
  7. ActiveReports报表设计器
  8. Google账户解封秘籍:这样申诉,分分钟解封Google 账户!
  9. java常见的异常_Java常见的10个异常
  10. mysql不是内部命令_mysql不是内部命令的错误解决方案
  11. 珍大户《认知世界的经济学》学习笔记 -- 第21课 利率的计算 更新时间2021年07月27日22:14:34
  12. 2017秋季武汉工程大学全日制自考本科招生简章
  13. linux for java programer
  14. 录音软件行业调研报告 - 市场现状分析与发展前景预测
  15. NLTK09《Python自然语言处理》code08 分析句子结构
  16. cer证书生成以及签名验签详细篇(keytool 命令)
  17. 【FinE】期权定价的二叉树方法(1)
  18. stm32c6t6硬件iic接口的使用--以0.96寸oled为例
  19. 【产品功能】弹性网卡支持私网多IP
  20. DeepCTR-Torch 如何使用【案例(Criteo、Movielens)演示、特征(SparseFeat、DenseFeat、VarLenSparseFeat)参数含义】

热门文章

  1. easyswoole入门
  2. 【python】OpenCV—Video to Imag / Image to Video
  3. 数据结构 - 主席树
  4. 海康修改云存储服务器,ivms-4200云存储服务器
  5. 年轻人应不应该买房 如何买
  6. TC Games 电脑玩手游助手会员无水印版,专为游戏直播玩家打造
  7. 使用饿了么update组件 实现多文件上传到后台以及本地图片显示功能
  8. 追加审批人样式html,更新 | 你的审批打印模板真丑!看别人用html模板怎么玩
  9. Apsara Clouder云计算专项技能认证:云服务器ECS入门[考试真题]
  10. 微信JS-SDK的PHP demo页面,解决Internal error 500错误