首页 > 解决方案 > Len 函数给出不正确的结果

问题描述

我正在尝试查找列表中的 len,但是当我这样做时,它会给出不正确的结果。不知道为什么或如何解决它。任何建议我的代码可能有什么问题?从照片中,您可以从突出显示的行中看到它显示计数为 2,但元素超过 2 个

代码和df的照片

每行项目

前 5 行的项目:

1. ['Unknown,email,transactional,Email - Transactional', 'Unknown,email,transactional,Email - Transactional', 'inspiratie,email,nieuwsbrief,E-mail - Nieuwsbrief', 'inspiratie,email,nieuwsbrief,E-mail - Nieuwsbrief']
  1. ['(未设置),email,transactional,Email - Transactional', '未知,email,transactional,Email - Transactional', '(direct),(none),(not set),Direct']
  2. ['未知,电子邮件,交易,电子邮件 - 交易','未知,电子邮件,交易,电子邮件 - 交易']
  3. ['未知,电子邮件,交易,电子邮件 - 交易','未知,电子邮件,交易,电子邮件 - 交易']
  4. ['未知,电子邮件,交易,电子邮件 - 交易','未知,电子邮件,交易,电子邮件 - 交易','未知,电子邮件,交易,电子邮件 - 交易','未知,电子邮件,交易,电子邮件 - 交易',' (未设置),email,transactional,Email - Transactional']

代码:

def calc(path):
    return len(path)

df_journey['path_count']= df_journey.apply(lambda x: calc(x.path), axis=1)

标签: pythonliststring-length

解决方案


我想通了,我首先将列放入字符串类型并用替换删除'[]'然后调整我的功能

def calc(path):
return len(path.split(','))

推荐阅读