首页 > 编程问答 >Python 3 写入 DBF(带有 Memo 的 dBase IV)

Python 3 写入 DBF(带有 Memo 的 dBase IV)

时间:2024-07-30 05:22:57浏览次数:11  
标签:python python-3.x dbf dbase

我需要在 Python3 中写入带有备注字段的 dBase IV dbf 文件,但找不到合适的模块来执行此操作。

我尝试过的包:

Simpledbf - 只读

dbf - 不支持dBase IV

dbfpy - 不支持 Python 3

dbfpy3 - 不支持 dBase IV

YDbf - 不支持备注字段

pyshp - 无法仅使用 dbf 文件(没有 .shp 和 .shx) )

欢迎任何有关下一步尝试的建议。


对于用 Python 3 写入带有备注字段的 dBase IV DBF 文件,是对的,找到一个能完美解决此问题的库很棘手。似乎没有很多库能完全支持 dBase IV 和 Memo。

以下是一些潜在解决方法以及需要考虑的因素:

1. 使用 ODBC 连接:

  • 可以探索使用 ODBC 驱动程序(例如 Microsoft Access Driver ( .mdb, .accdb) 或专门的 DBF 驱动程序)通过 Python 的 pyodbc 包建立到 DBF 文件的连接。
  • 这可能需要一些配置,并且需要在系统上安装合适的 ODBC 驱动程序。
  • ODBC 为提供了一种更通用的方式与数据库交互,并且可以支持备注字段。

2. 考虑替代文件格式:

  • 如果能够控制所使用的文件格式,那么考虑使用一种具有更好 Python 支持的现代替代方案可能更实际。
  • 一些选项包括:
    • CSV(逗号分隔值): 易于使用,并且有很好的库支持(例如,Python 的内置 csv 模块)。
    • JSON(JavaScript 对象表示法): 一种流行的数据交换格式,具有出色的 Python 支持(使用 json 模块)。
    • SQLite: 一个轻量级的嵌入式数据库,提供良好的 Python 支持,并且能够处理更大规模的数据。

3. 使用其他语言或工具作为中间步骤:

  • 如果有一个必须使用 DBF 文件的特定用例,并且无法找到合适的 Python 解决方案,可以考虑使用其他语言(例如 Java 或 C#)来处理 DBF 文件创建,这些语言可能具有更广泛的库支持。然后,可以使用 Python 来处理其他任务。

额外提示:

  • 彻底搜索 PyPI: 新库一直在出现,因此请务必在 PyPI(Python 包索引)上使用与 DBF 相关的关键字(例如,“dbf”、“dBase”、“dbase4”)进行最新搜索。
  • 探索 GitHub: 查看 GitHub 上可能尚未在 PyPI 上发布的项目或代码片段。

最终选择取决于的特定约束条件和要求。

如果能提供有关正在尝试实现的目标以及对文件格式的灵活程度的更多背景信息,我可以为提供更具体的建议。

标签:python,python-3.x,dbf,dbase
From: 70915812

相关文章

  • Robin-Stocks Python 中的 order_buy_fractional_by_price 问题
    我在Robin-StocksPython包中的order_buy_fractional_by_price函数中遇到问题。在正常市场交易时间内下达以美元为基础的买入订单时,该订单被错误地设置为限价订单。对我来说看起来有问题的代码似乎是导致此问题的原因。我尝试在包管理器中本地修改或删除有问题的代码,但遇......
  • 在python中使用turtle绘制图案(带点)
    我正在尝试使用python中的海龟制作一幅赫斯特画(点图案)。我设法实现了它。Hirst_painting_dot_pattern但是我的for循环没有按照我预期的方式工作。它省略了最后一次迭代。在下面的代码中,我的for循环没有生成最后一个点。因此,我在循环末尾添加了一行来制作最后......
  • 使用 Python 进行 QuantLib Vanilla 掉期定价 - 错误
    我真的需要帮助...我有一个使用QuantLib构建自己的VanillaSwapPricer的项目。我想根据ois掉期的市场价格进行计算以进行贴现,并根据Euribor6M掉期+FRA进行预测固定。总而言之,我的目标是尽可能接近彭博社对标准Euribor6M掉期的定价(贴现ois)-fwdEuribor6M)。......
  • 我正在制作一个可以打开wav文件的python程序,我想知道wav文件的格式是什么
    因此,我已经通过此网站的研究编写了验证并读取wav标头的代码。但我想知道,data段中的数据是如何存储的?它们位于16位部分中,彼此相邻放置。我认为在Audacity中制作440hz正弦波,然后导出它,会显示一些结果,并且字节确实看起来更整齐,但仍然像废话一样接缝。相信我,我已经......
  • python - 面板库 - PasswordInput 不会对回车做出反应
    我试图避免需要提交按钮。以下代码当前正在远程jupyter实验室运行。仅当光标焦点从密码小部件中移除后,才会打印该消息。我想要回车来触发消息打印。有什么线索吗?frompanel.widgetsimportPasswordInput,TextInputpn.extension()defon_enter(event=None):message_p......
  • 即使安装了软件包,也找不到 python 模块句子转换器
    对于我的python脚本(如下所示),我使用句子转换器包,其中包含SBERT模型。即使在执行“piplist”时明确列出该软件包,并且还安装了torch,所有内容都更新到最新版本,但仍然找不到该模块。脚本:importnumpyasnpimportpandasaspdfromsentence_transformersimportSenten......
  • 有没有办法在 python 中返回类实例的布尔属性?
    我想组织我玩的游戏中的汽车数据。为此,我创建了一个“Car”类。我希望将此类实例的一些属性作为布尔值,这样我就可以将此类的所有实例放入列表中并过滤它们。我当前的解决方案不起作用,因为,我收到以下错误消息:TypeError:__repr__returnednon-string(typeCar)我使用......
  • python 正则表达式匹配一行中的多个单词而不转到下一行
    我正在编写一个解析器来解析以下输出:admin@str-s6000-on-5:~$showinterfacestatusEthernet4InterfaceLanesSpeedMTUAliasVlanOperAdminTypeAsymPFC------------------------------------------......
  • 使用 Python 平滑和对称不规则形状和曲线
    我需要完成三项任务:正则化曲线曲线的对称性完成不完整的曲线例如,这里是输入和预期的输出图像:输入输出|||在一般设置中,形状可以由任何SVG曲线基元(贝塞尔曲线、直线、弧线)表示。为了统一表示,示例包含曲线的折线近似。这些折线保存为......
  • 在Python中通过绝对路径引用数据文件夹
    我有一个大型python项目,其中数据太大,无法每次都以相同的方式共享。不同的人可能会使用网络位置或将某些内容复制到本地驱动器。该路径由不同子文件夹中的脚本和笔记本使用。例如,我将创建一个config.py来定义数据文件夹的路径。importsyssys.path.append('../'......