Python3 歌词解析的练习
昨天试着写过一次歌词解析,不过想了半天都没什么头绪就在网上浏览了各位网友的代码,有了思路后自己写了下,今天又为了记忆重新写了次,并做了部分优化。
歌词是这样的:
[ti: 海阔天空] [ar:黄家驹] [al:乐与怒] [by:mp3.50004.com] [00:00.00]Beyond:海阔天空 [01:40.00][00:16.00]今天我寒夜里看雪飘过 [01:48.00][00:24.00]怀著冷却了的心窝飘远方 [01:53.00][00:29.00]风雨里追赶 [01:57.00][00:33.00]雾里分不清影踪 [02:00.00][00:36.00]天空海阔你与我 [02:03.00][00:39.00]可会变(谁没在变) [00:42.00]多少次迎著冷眼与嘲笑 [00:49.00]从没有放弃过心中的理想 [00:54.00]一刹那恍惚 [00:58.00]若有所失的感觉 [01:01.00]不知不觉已变淡 [01:04.00]心里爱(谁明白我) [03:56.00][03:18.00][02:06.00][01:07.00]原谅我这一生不羁放纵爱自由 [04:01.00][03:24.00][02:12.00][01:13.00]也会怕有一天会跌倒 [04:06.00][03:44.00][03:29.00][02:19.00][01:20.00]被弃了理想谁人都可以 [04:14.00][03:49.00][03:37.00][02:26.00][01:26.00]那会怕有一天只你共我 [03:05.00]仍然自由自我 [03:10.00]永远高唱我歌 [03:13.00]走遍千里 http://lrc.bzmtv.com
代码如下:
from sys import pathdef lyricRaad(path):with open(path,"r+",encoding="utf-8") as f:lyricList = f.readlines()# print(lyricList) ''' lyricDict:该字典的key与value值分别用来存放播放时间和歌词 ''' lyricDict = {}sortList = []for lyi in range(len(lyricList)):lyricList[lyi] = lyricList[lyi].replace("["," ")lineList = lyricList[lyi].split("]")# print(lineList) ''' 如果lineList最后的元素是"\n"的话就直接开始下次循环,因为这个值要存到dictValue里 ''' if lineList[-1] == "\n":continue ''' dictValue存的是歌词 ''' dictValue = lineList[-1]# print(dictValue) for linei in range(len(lineList)-1):linek = lineList[linei].split(":")''' time:总时间 ''' time = float(linek[0])*60 + float(linek[1])lyricDict[time] = dictValuesortList.append(time)sortList.sort()''' 尝试通过时间来输出歌词 ''' for now in range(int(sortList[-1]+1)):for pttime in sortList:# print(pttime) if now == int(pttime):print(lyricDict[now])from time import sleepsleep(1)print("歌词输出完毕。")''' 歌词文件与本文件在同个文件夹,获取这个目录,当然你也可以填入其他歌词目录。 ''' # print(path) lyricPath = "C:\\Python34\\workspace\\text\\A6_9_18\\海阔天空.lrc" lyricRaad(lyricPath)
![](/assets/blank.gif)
还是新手,如果有什么不规范的地方和错误欢迎指出。。
Python3 歌词解析的练习相关推荐
- iOS 音乐播放器之锁屏效果+歌词解析
概述 功能描述:锁屏歌曲信息.控制台远程控制音乐播放:暂停/播放.上一首/下一首.快进/快退.列表菜单弹框和拖拽控制台的进度条调节进度(结合了QQ音乐和网易云音乐在锁屏状态下的效果).歌词解析并随音乐 ...
- Python中歌词解析
分析: 1.对于歌词解析这个事情,本质上就是对字符串进行切片. 2.首先要讲时间与歌词分开 3.将时间的24时格式转为数字形式,作为字典的key,而歌词作为字典的value 可以直接使用:dict[k ...
- python歌词解析器
python实现歌词解析器 今天掌握到了歌词解析器的python基础语法代码实现,个人觉得挺有意思,便展示出来分享分享 注:展示结果为每过相应的时间,输出端打印相应的歌词 import time #导 ...
- iOS 歌词解析(lrc, 非谓词, 仿QQ音乐, 仿卡拉ok模式)
前言 要解析 lrc 格式的歌词, 首先需要知道什么是 lrc 歌词, 还需要知道 lrc 歌词的规范. 在这里先放出一个百度百科的链接地址, 仅供大家参考: 百度百科: lrc 关于本文 本文的歌词 ...
- 正则表达式案例练习-封装工具函数歌词解析和时间格式化
文章目录 正则表达式案例练习 案例一: 歌词解析 案例二: 时间格式化 正则表达式案例练习 案例一: 歌词解析 我们模拟从服务器拿到歌词, 要求根据歌曲播放的时间展示对应的歌词 我们从服务器获取过来的 ...
- js网易云歌词解析处理,
网易云歌词解析之显示 废话不多说,直接上代码,请仔细亲手跟着写一遍, 如果你看懂了,记得点赞 <!DOCTYPE html> <html><head><met ...
- 设计模式学习(四):基于Builder模式的歌词解析器
一.前言 上篇文章(设计模式学习(三):生成器(Builder)模式)记录了 Builder 模式的具体内容,这次使用C语言来实现一个实际的例子--基于Builder模式的歌词解析器. 本文的示例来自 ...
- 用javaScript编写lrc歌词解析器
如果想要了解如何编写的请继续往下看,如果只需要代码,请点击这里Github lrc歌词文件介绍 来先看一下以下歌词 Heart To Heart.lrc [ti:Heart To Heart] [ar ...
- iOS电商常见动画与布局、微信悬浮窗、音乐播放器、歌词解析、拖动视图等源码
iOS精选源码 MXScroll 介绍 混合使用UIScrollView ios 电商demo(实现各种常见动画效果和页面布局) 一行代码集成微信悬浮窗 可拖动,大小的视图,可放置在屏幕边缘. 在使用 ...
最新文章
- 《线性代数》概念定理大全!
- Java 到底是值传递还是引用传递
- 笔记-中项案例题-2019年下-整体管理
- qt如何提前jpg文件里的缩略图_如何去捕获和编辑H5制作软件Hype中的海报图像
- JAVA多线程学习3--线程一些方法
- 在Java里如何给一个日期增加一天
- 技巧:在 C/C++中如何构造通用的对象链表
- python中isinstance(3、object)_python中isinstance函数判断各种类型的小细节
- 实用ExtJS教程100例-001:开天辟地的Hello World
- DEVC++中的 “万能头文件” <bits/stdc++.h>
- dorado7.x关闭子页面,刷新父页面
- java开发app_使用java制作app教程
- 安卓手机管理器_安卓如何看撤回的微信
- 微信小程序开发语言(微信小程序开发教程)详细步骤
- php动态创建菜单,php创建无限级树型菜单
- 自动生成无课表(云南农业大学)
- 财路网每日原创推送:2019年区块链在企业应用中扮演的角色
- jdk1.8、jre1.8运行环境下载安装与环境配置
- 蓝桥杯python-找单词出现次数最多的字母
- 精细化ASO帮助开发者在App Store中突围