【问题标题】:Python: How to get string from item without [u'']Python:如何在没有 [u''] 的情况下从项目中获取字符串
【发布时间】:2017-01-03 14:49:43
【问题描述】:

我在这里使用 python 2.7。我有一些代码可以提取某些 mp3 标签,像这里这样

mp3info = EasyID3(fileName)
print mp3info
print mp3info['genre']
print mp3info.get('genre', default=None)
print str(mp3info['genre'])
print repr(mp3info['genre'])
genre = unicode(mp3info['genre'])
print genre

我必须使用名称 ['genre'] 而不是 [2],因为曲目之间的顺序可能会有所不同。它产生这样的输出

{'artist': [u'Really Cool Band'], 'title': [u'Really Cool Song'], 'genre': [u'Rock'], 'date': [u'2005']}
[u'Rock']
[u'Rock']
[u'Rock']
[u'Rock']
[u'Rock']

一开始我想,“谢谢你,我真的很棒”,但后来我继续尝试调试代码。如您所见,我尝试了几种不同的方法,但都没有奏效。我只想让它输出

Rock

我认为我可以使用拆分,但这很快就会变得非常混乱,因为艺术家或标题很可能包含'

有什么建议吗?

【问题讨论】:

标签: python dictionary unicode


【解决方案1】:

不是可以在上面使用split的字符串,而是列表;该列表通常(总是?)包含一项。所以你可以得到第一个项目:

genre = mp3info['genre'][0]

【讨论】:

    【解决方案2】:
    [u'Rock']
    

    是一个长度为1的列表,它的单个元素是一个Unicode字符串。

    试试

     print genre[0]
    

    只打印列表的第一个元素。

    【讨论】:

      猜你喜欢
      • 2021-02-09
      • 1970-01-01
      • 2013-07-03
      • 2019-12-13
      • 2019-06-11
      • 1970-01-01
      • 2015-06-02
      • 1970-01-01
      • 2019-01-15
      相关资源
      最近更新 更多