[英]Create longestPossible(longest_possible in python) helper function that takes 1 integer argument which is a maximum length of a song in seconds
我是編碼新手,請幫助我解釋這個問題:
歌曲是一組對象,其格式如下:
{藝術家:'藝術家',標題:'標題字符串',播放:'04:30'}
您可以期望播放值的格式與上述完全相同。
輸出應該是數據庫中符合不超過指定時間標准的最長歌曲的標題。 如果數據庫中沒有符合條件的歌曲,則返回 false。
您可以更改播放,以便它不是字符串,而是一個整數(例如,以秒為單位的歌曲長度),您可以將其轉換為字符串以進行顯示,然后從那里進行測試,或者,在測試期間,您可以進行播放並將其轉換為以秒為單位的長度,如下所示:
def songLength(playback):
seconds = playback.split(':')
lengthOfSong = int(seconds[0]) * 60 + int(seconds[1])
return lengthOfSong
這將給出以下結果:
>>> playback = '04:30'
>>> songLength(playback)
270
我對您使用的特定數據結構不太熟悉,但是如果您可以迭代這些數據結構,您可以執行以下操作:
def longestPossible(array, maxLength):
longest = 0
songName = ''
for song in array:
lenSong = songLength(song.playback) # I'm formatting song's playback like this because I'm not sure how you're going to be accessing it.
if maxLength >= lenSong and (maxLength - lenSong) < (maxLength - longest):
longest = lenSong
songName = song.title
if longest != 0:
return songName
else:
return '' # Empty strings will evaluate to False.
我還沒有測試過這個,但我認為這至少應該讓你走上正軌。 有更多 Pythonic 的方法可以做到這一點,所以永遠不要停止改進你的代碼。 祝你好運!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.