当前位置: 首页 > 知识库问答 >
问题:

访问字符串中的python列表或字典

锺离阿苏
2023-03-14

使用Python我试图访问一个字段是字符串格式的CSV文件,其中有一个字典列表。

一行训练['list_of_production_companies']

"[{'name': 'Lions Gate Films', 'id': 35}, {'name': 'Vertigo Entertainment', 'id': 829}, {'name': 'Gotham Group', 'id': 3672}, {'name': 'Tailor Made', 'id': 24557}, {'name': 'Mango Farms', 'id': 24558}, {'name': 'Quick Six Entertainment', 'id': 24561}]"

train['list_of_production_companies'] = train['production_companies'].apply(lambda x: [i['name'] for i in x]  if i[name] != {} else [])

NameError Traceback(最近的调用最后)在 () ----

C:\Program Data\Anaconda3\lib\site-包\熊猫\core\series.py在应用(自我,功能,convert_dtype,args,**kwds)3190
其他:3191值=self.astype(对象)。

熊猫/_libs/src\inference.pyx_libs.lib.map_infer()

在(x)----

名称错误:名称'i'未定义

共有1个答案

芮琛
2023-03-14

您对lambda函数的理解不正确。

使用:

train['list_of_production_companies'] = train['production_companies'].apply(lambda x: [i['name'] if 'name' in i else [] for i in x])
 类似资料:
  • 问题内容: 本质上,我想从文件中吸收一行文本,将字符分配给列表,并创建列表中所有单独字符的列表-列表列表。 此刻,我已经尝试过了: 这就是我所拥有的。我不太了解如何提取单个字符并将其分配给新列表。 我从文件中得到的行将类似于: 我想把它变成这个列表,每个单独的字符: 问题答案: 字符串是可迭代的(就像列表一样)。 我的意思是您确实想要这样的东西: 要么 要么 字符将包含文件中的所有字符。

  • 问题内容: 我想从python中的字符串列表中删除所有空字符串。 我的想法如下: 有没有更多的Python方式可以做到这一点? 问题答案: 我会用: Python 3从返回一个迭代器,因此应包装在对的调用中

  • 问题内容: 有没有更短的方法可以编写以下代码? 注意,我不需要替换那些确切的值。我只是在寻找一种将5条以上的线变成少于5条线的方法 问题答案: 看起来是使用循环的好机会: 如果您不介意括号,则更快的方法是:

  • 我想更改字典的纬度和经度值。 它正在抛出以下错误消息: 对于此它在targetWaypoints内打印一个完整的字典。我想打印纬度值。 提前谢谢。

  • 我们如何在字符串列表中找到字母或特殊字符?我有一张单子,想看看里面有没有特别的字母。我试着去做,但出了一个错误。 代码: 获取错误: 我们不应该使用吗?或者,如果一个字符串有特殊的字母或特殊的字符,我们应该找到什么?

  • 问题内容: 有什么办法包装UTF-8列表吗?我想做类似的事情: 问题答案: 您可以将所有行连接在一起以创建一个String,然后使用将其转换为字节数组并将其传递到ByteArrayInputStream。但是,这不是最有效的方法。