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

Python DictReader中的"错误:行包含空字节"

单于承
2023-03-14

在Python中尝试读取CSV列并将其转换为字典列表时,我遇到以下错误“error:line contains NULL byte”。

我已经注意到列表包含空字节,但这似乎与我编写的代码不兼容。

import pandas as pd
import csv
from collections import defaultdict

columns = defaultdict(list) 

with open('file.csv') as f:
    reader = csv.DictReader(f) 
    for row in reader: 
        for (k,v) in row.items(): 
            columns[k].append(v) 
                                 

keywords = print(columns['Keyword'])

任何帮助将不胜感激!谢谢。

共有1个答案

景唯
2023-03-14

您看到的问题是空的行/单元格。您提到的链接正在用虚拟字符串替换'\0'"

“文件”中还有其他内容吗。csv'导致此错误的原因是什么?你能先检查一下它的内容吗?我相信您得到的错误需要用伪字符串“”替换其他一些有问题的字符串

一种更简单的方法是只打印所有唯一字符,并检查是否有诸如“\0”、“0\0”、“0\0”等有问题的字符串

如果只希望将列转换为列表,可以尝试以下操作:

df = pd.read_csv("file.csv")
df["Keyord"].tolist()
 类似资料:
  • 我试图解析JSON结果从Wordpress插件API使用RetroFit2和GSON。我使用著名的网站生成了我的POJO,并将其修改为以下模型: 插件ApiResponse.java 插件。JAVA 截图。JAVA _1.java(_2.java_3.java相同) 如果屏幕截图字段不包含任何条目,则会出现问题。我已经设置了HttpLoggingInterceptor,它完整地记录响应代码200和

  • 我的实体如下。 除了IDE错误之外,项目可以正确地构建和运行。

  • 我试图在elasticsearch中对嵌套字段进行排序,但在按升序排序时,它总是在排序列表的顶部显示带有空值嵌套字段的文档。我希望排序(升序和降序),并希望空值嵌套字段文档出现在排序列表的末尾。 这是我正在使用的排序查询: 下面是我应用的与嵌套的“标记”字段相关的映射: 样品有效载荷:

  • 问题内容: 有没有一种方法可以在sql查询的顶部包含一个空白行,例如,是否打算将其用于下拉列表?(MS Sql Server 2005或2008) 我想要什么 从通常只是上面的表,但没有第一行? 问题答案: 我觉得在SQL之外执行此操作会更好,但是如果您坚持要…

  • 我试图使用自定义路由在any逻辑。对于路由优化,我使用谷歌或工具,我已经在模型属性部分导入了所有必要的包和依赖项。 我是一个新手,在做了一些研究后,我在协议缓冲区中做了一些修改。jar文件,如GitHub中提到的,但我仍然面临同样的错误。 如果我再次尝试从模型属性中删除协议缓冲区依赖项,我最终会得到相同的错误。 提前谢谢。

  • 嗨,我有相当不错的python和java知识,我最近决定在我的编程方面取得进一步的进步,就是创建我自己的语言,以便在我需要的时候使用和操作。我为eclipse安装了javacc插件,并浏览了一些教程。 我的问题是,当我创建一个新项目(文件 静态=假; “令牌上的语法错误,请删除这些令牌” Eclipse对除类名之外的所有内容都这样做,请注意,项目下的javacc模板没有错误。 请帮我找到一个解决方