【问题标题】:Getting error:'float' object has no attribute 'split'出现错误:'float' 对象没有属性 'split'
【发布时间】:2018-07-09 12:11:12
【问题描述】:

我使用下面的代码来拆分我的列表元素,例如:

for rl in Rules:
for a,b in rl.items():
    rl[a] = b.split('|')

然后我收到错误“float”对象没有属性“split””

我已经检查了列表 RULE 并且不存在 Nan,但是我的理解是这个错误只有在它具有 NaN 值时才会被发现。 任何人都可以在循环之前/之后给出一个解决方案,这可能有助于解决这个问题。提前致谢。

【问题讨论】:

  • 因为bfloat
  • 向我们展示一些演示问题的示例输入数据。该错误是不言自明的。
  • 加上完整的代码,这样比较好理解。

标签: python python-3.x list dataframe


【解决方案1】:

在第二个 for 循环之后检查 type(b) 怎么样?

for rl in Rules:
    for a,b in rl.items():
        if not isinstance(b, float):
            rl[a] = b.split('|')

【讨论】:

  • 这种检查最好使用isinstance
【解决方案2】:

这意味着b 是一个浮点值。您不能对浮点值调用 split 方法,只能对字符串调用。我会检查rl 中每个键/值对的值。

【讨论】:

    猜你喜欢
    • 2017-07-02
    • 2016-07-25
    • 1970-01-01
    • 2019-03-15
    • 1970-01-01
    • 2019-07-19
    • 2018-03-14
    • 2022-11-29
    • 1970-01-01
    相关资源
    最近更新 更多