Python零基础学习代码实践 —— 模拟播放器中的歌词显示

简介: import timemusucLrc = '''[00:00.01]给我你的爱  [00:02.01]林宥嘉,张杰 [00:05.53] 作词:秋风[00:09.83] 作曲:秋风[00:14.

import time
musucLrc = '''
[00:00.01]给我你的爱  
[00:02.01]林宥嘉,张杰 
[00:05.53] 作词:秋风
[00:09.83] 作曲:秋风
[00:14.90]
[00:15.65]相信我 在每个生命的路口
[00:20.98]在每个无助的时候
[00:24.75]都有对爱的渴求
[00:30.47]我想把 真的爱向你传达
[00:36.53]无论你在海角天涯
[00:39.52]都能感到 我的牵挂
[00:44.28]请给我你的爱
[00:47.84]请伸出手来传递这信赖
[00:51.54]就在这茫茫人海
[00:53.79]真心的爱 让世界变色彩
[00:59.02]请给我你的爱
[01:02.45]让我们用爱改变着未来
[01:06.10]在每个艰难时刻
[01:08.88]伸你的手 感觉真的爱
[01:14.81]牵着手 让我们静静地感受
[01:19.92]当风雨艰难过去后
[01:23.79]那种美好的自由
[01:29.29]我们都曾 错过幸福的意义
[01:34.77]只希望我还来得及
[01:38.45]去告诉你 真心爱你
[01:43.15]请给我你的爱
[01:47.39]请伸出手来传递这信赖
[01:50.42]就在这茫茫人海
[01:53.18]真心的爱 让世界变色彩
[01:57.72]请给我你的爱
[02:01.53]让我们用爱改变着未来
[02:05.19]在每个艰难时刻
[02:07.86]伸你的手 感觉真的爱
[02:14.27]我不再想要错过
[02:15.81]你的每个热切期待
[02:19.18]用爱 在明天到来之前
[02:22.56]向你大声说出爱~~爱
[02:29.44]请给我你的爱
[02:32.65]请伸出手来传递这信赖
[02:36.33]就在这茫茫人海
[02:39.08]真心的爱 让世界变色彩
[02:43.89]请给我你的爱
[02:47.56]让我们用爱改变着未来
[02:51.05]在每个艰难时刻
[02:53.96]伸你的手 感觉真的爱
[03:01.38]给我你的爱~~
'''
#将数据分解存储到字典里
lrcDict = {}
musicList = musucLrc.splitlines()

for lrcLine in musicList:
    #runCount = lrcLine.count(":")
    lrcLineList = lrcLine.split("]")
    for index in range(len(lrcLineList) - 1):
        timeStr = lrcLineList[index][1:]
        #print(timeStr)
        timeList = timeStr.split(":")
        timea = float(timeList[0]) * 60 + float(timeList[1])
        #print(timea)
        lrcDict[timea] = lrcLineList[-1]
#print(lrcDict)
allTimeList = []
for t in lrcDict:
    allTimeList.append(t)
allTimeList.sort()
#print(allTimeList)
#在字典里将数据调出来然后按照时间间隔将数据显示出来
#效果是一行一行的刷新
getTime =  0
while 1:
    for n in range(len(allTimeList)):
        tempTime = allTimeList[n]
        if getTime < tempTime:
            break
    lrc = lrcDict.get(allTimeList[n])
    if lrc == None:
        pass
    else:
        print(lrc)
    if n in range(len(allTimeList) - 1):
        time.sleep(allTimeList[n + 1] - allTimeList[n])
        getTime += (allTimeList[n + 1] - allTimeList[n])
    else:
        break

相关文章
|
6天前
|
并行计算 C语言 开发者
优化Python代码的五大技巧
Python作为一种流行的编程语言,在各种应用场景中广泛使用。然而,随着项目规模的增长和需求的变化,Python代码的性能和可维护性也成为了关键问题。本文将介绍优化Python代码的五大技巧,帮助开发者提升代码效率和质量。
|
1天前
|
机器学习/深度学习 人工智能 数据处理
Python编程的魅力与实践
Python编程的魅力与实践
|
1天前
|
机器学习/深度学习 人工智能 算法
机械视觉:原理、应用及Python代码示例
机械视觉:原理、应用及Python代码示例
|
1天前
|
存储 缓存 算法
优化Python代码性能的7个技巧
在日常的Python开发中,优化代码性能是一个重要的课题。本文介绍了7个实用的技巧,帮助开发者提高Python代码的执行效率,包括利用生成器表达式、使用适量的缓存、避免不必要的循环等。通过本文的指导,读者可以更好地理解Python代码性能优化的方法,提升自身的编程水平。
|
2天前
|
运维 Shell Python
Shell和Python学习教程总结
Shell和Python学习教程总结
|
2天前
|
Python
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
Python从入门到精通:深入学习面向对象编程——2.1.2继承、封装和多态的概念
|
2天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
2天前
|
数据采集 数据可视化 数据处理
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
Python从入门到精通的文章3.3.1 深入学习Python库和框架:数据处理与可视化的利器
|
2天前
|
存储 网络协议 关系型数据库
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
|
3天前
|
人工智能 Python
【Python实用技能】建议收藏:自动化实现网页内容转PDF并保存的方法探索(含代码,亲测可用)
【Python实用技能】建议收藏:自动化实现网页内容转PDF并保存的方法探索(含代码,亲测可用)
21 0