使用Python将.csv文件转换为.dbf?

djq*_*djq 11 python csv dbf python-3.x

如何使用python脚本将.csv文件转换为.dbf文件?我发现这一块的代码,在网上,但我不能肯定它是多么可靠.有没有具有此功能的模块?

Eth*_*man 8

使用dbf包,您可以获得一个基本的csv文件,其代码类似于:

import dbf
some_table = dbf.from_csv(csvfile='/path/to/file.csv', to_disk=True)
Run Code Online (Sandbox Code Playgroud)

这将创建具有相同名称和字符或备注字段以及字段名称f0,f1,f2等的表.

对于不同的文件名,请使用filename参数,如果您知道字段名称,也可以使用该field_names参数.

some_table = dbf.from_csv(csvfile='data.csv', filename='mytable',
        field_names='name age birth'.split())
Run Code Online (Sandbox Code Playgroud)

这里提供相当基础的文档.

披露:我是这个包的作者.


Joh*_*hin 6

您不会在网上找到任何读取CSV文件并写入DBF文件的内容,以便您可以调用它并提供2个文件路径.对于每个DBF字段,您需要指定类型,大小和(如果相关)小数位数.

一些问题:

什么软件会消耗输出DBF文件?

没有"这个"(唯一的)DBF文件格式.你需要dBase III吗?dBase 4?7?Visual FoxPro?等等?

您需要编写的文本字段的最大长度是多少?你有非ASCII文本吗?

哪个版本的Python?

如果您的要求很少(dBase III格式,没有非ASCII文本,文本<= 254字节长,Python 2.X),那么您引用的食谱配方应该可以胜任.


ast*_*asr 5

使用该csv从csv文件中读取数据.第三方dbf 库可以为您编写dbf文件.

编辑:最初,我列出了dbfpy,但上面的库似乎更积极地更新.

  • 可悲的是,dbf的文档非常有限,我甚至无法弄清楚如何使用它.有一些示例代码行(这使得它看起来很容易),但它们不起作用.不过,谢谢你的回答! (2认同)