歡迎關注,敬請點讚!
解析成乙個時間對應一句歌詞的形式,封裝函式(根據時間返回歌詞)
s =
'''[ti:藍蓮花]
[al:留聲十年絕版青春北京演唱會藍蓮花]
[00:-00.70]演唱:許巍
[00:00.00]沒有什麼能夠阻擋
[00:06.01]你對自由的嚮往
[00:11.43]天馬行空的生涯
[00:16.99]你的心了無牽掛
[00:21.20][01:50.60]穿過幽暗的歲月
[02:16.93][00:27.81]也曾感到彷徨
[02:22.21][00:33.13]當你低頭的瞬間
[02:27.62][00:38.32]才發覺腳下的路
[02:31.64][00:42.37][00:43.79]心中那自由的世界
[02:38.23]如此的清澈高遠
[02:43.30]盛開著永不凋零
[02:47.70]藍蓮花
[02:53.95][01:05.41]'''
lt = s.splitlines(
)# 按換行進行切割
dt1 =
for i in lt:
if i[1:
4]=='ti:'
: dt1[
'歌曲名'
]= i[4:
-1]elif i[1:
4]=='al:'
: dt1[
'歌曲資訊'
]= i[4:
-1]else
: i = i.replace(
'[','')
# 將左括號刪除
lt1 = i.split(
']')
# 用右括號切割
for j in
range
(len
(lt1)-1
):# 前面的當字典的鍵
dt1[
float
(lt1[j][:
2])*
60+float
(lt1[j][3
:])]
= lt1[-1
]# 最後乙個當字典的值
lt2 =
sorted
(list
(dt1)[2
:], reverse=
true
)# 取字典的鍵,剔除不含時間的鍵,逆序
defgeci
(time)
:for k in lt2:
# 遍歷時間
if time >= k:
# 找到比自己小,且距離自己最近的時間
return dt1[k]
break
else
:return dt1[
-0.7
]# 如果遍歷結束沒找到,正常退出迴圈,執行else
time1 =
float
(input()
)# 將輸入時間轉化為浮點型。
print
(geci(time1)
)
靈活運用字串、列表、字典等資料操作。
歡迎關注,敬請點讚!
返回頂部
Python基礎練習之解析歌詞
歌詞解析 解析成乙個時間戳語句歌詞的形式,封裝函式 根據時間返回歌詞 s ti 藍蓮花 ar 許巍 al 留聲十年絕版青春北京演唱會 00 01.70 藍蓮花 00 00.70 演唱 許巍 00 00.00 00 00.70 沒有什麼能夠阻擋 00 06.01 你對自由的嚮往 00 11.43 天馬...
用 python 解析歌詞
2.解析歌詞 musiclrc 00 03.50 傳奇 00 19.10 作詞 劉兵 作曲 李健 00 20.60 演唱 王菲 00 26.60 04 40.75 02 39.90 00 36.25 只是因為在人群中多看了你一眼 04 49.00 02 47.44 00 43.69 再也沒能忘掉你容...
python歌詞解析器
今天掌握到了歌詞解析器的python基礎語法 實現,個人覺得挺有意思,便展示出來分享分享 注 展示結果為每過相應的時間,輸出端列印相應的歌詞 import time 匯入time模組 song 00 03.50 傳奇 00 19.10 作詞 劉兵 作曲 李健 00 20.60 演唱 王菲 00 26...