python编辑dbf文件_Python修改DBF文件指定列
一、需求:
某公司每日收到一批DBF文件,A系统实时处理后将其中dealstat字段置为1(已处理)。现在每日晚间B系统也需要处理该文件,因此需将文件中dealstat字段修改为空(未处理)。
二、分析:
1、应创建副本进行修改
解答:使用shutil.copy
2、修改DBF
解答:使用dbf模块。此模块能找到的文档比较旧,需要结合代码进行理解。
三、代码实现:
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
"""
@Time : 2020-01-15 10:43
@Author : Peanut_C
@FileName: DBF_Modifier.py
"""
import os
import time
import shutil
import dbf
source_dir = r'D:\'
destination_dir = r'E:\'
"""删除目标文件夹内旧文件"""
os.chdir(destination_dir)
for file in os.listdir(destination_dir):
os.remove(file)
print('INFO ===>>> 历史文件删除完成!\n')
"""文件拷贝任务"""
os.chdir(source_dir)
for file in os.listdir(source_dir):
shutil.copy(file, destination_dir)
print('INFO ===>>> 今日文件拷贝完成!\n')
"""DBF修改任务"""
os.chdir(destination_dir)
for file in os.listdir(destination_dir):
tb = dbf.Table(file) # 创建tb实例
# print(tb) # 打印tb信息
titles = dbf.get_fields(file) # 将表头以列表形式打印出来
# print(titles)
if 'dealstat' in titles:
flag = 0 # 文件修改标记
tb.open(mode=dbf.READ_WRITE) # 读写方式打开tb
for record in tb:
with record as r:
if r.dealstat is not None:
# print(r.dealstat)
r.dealstat = ''
flag = 1 # 修改后将标记改为1
# print(r.dealstat)
else:
continue
# print(record.dealstat)
tb.close()
if flag == 0:
print(file + "===>>>没有要修改的数据!\n")
else:
print(file + "===>>>DealStat字段修改完毕!\n")
else:
print(file + "===>>>没有DealStat字段!\n")
print('INFO ===>>> 今日文件修改完毕!\n')
四、运行情况:
运行程序,首先清空目标目录,然后创建文件副本,最后依次处理目录中的DBF文件。
虽是个简单的功能,但可节省不少时间,依此类推可对DBF进行其他修改。
希望能帮到有需要的朋友。
多多指教!
以上就是Python修改DBF文件指定列的详细内容,更多关于Python修改DBF文件的资料请关注我们其它相关文章!
本文标题: Python修改DBF文件指定列
本文地址: http://www.cppcns.com/jiaoben/python/370320.html
python编辑dbf文件_Python修改DBF文件指定列相关推荐
- python修改json文件_python修改json文件的value实例方法
利用python修改json文件的value方法 做工程时遇到需要监听json文件,根据json文件中的key-value值作出相应处理的情形.为此写了修改json文件的python脚本供工程后续调用 ...
- python不同数据的读入_python读写不同编码txt文件_python读写txt文件
python读写不同编码txt文件_python读写txt文件 以后整理规范 [python] view plaincopy import os import codecs filenames=os. ...
- python文件目录无权限_python检查目录文件权限并修改目录文件权限的操作
我就废话不多说了,还是直接看代码吧! # -*- coding: utf-8 -*- # @author flynetcn import sys, os, pwd, stat, datetime; L ...
- python 修改excel文件_Python修改并保存当前excel文件
在工作中经常需要修改excel文件并保存(例如添加行.添加列),如果只使用xlwt和xlrd并不能达成目的,需要用到xlutils.下面以我实际写的代码为例 备注:代码格式本来好好的,不知道为什么发表 ...
- python修改yaml文件_Python读取yaml文件的详细教程
yaml简介 1.yaml [ˈjæməl]: Yet Another Markup Language :另一种标记语言.yaml 是专门用来写配置文件的语言,非常简洁和强大,之前用ini也能写配置文 ...
- python 解析xml格式_Python解析XML文件
1.概述 Python有三种方法解析XML:SAX,DOM,以及ElementTree: 1.SAX (simple API for XML ) python 标准库包含SAX解析器,SAX用事件驱动 ...
- python下的所有文件_python批量复制文件夹下所有文件大小
python复制文件夹下所有文件 Python---进阶---文件操作---获取文件夹下所有文件的数量和大小 一.####编写一个程序,统计当前目录下每个文件类型的文件数 ####思路: - 打开当前 ...
- python 读取文件_python读取docx文件,就是如此简单
扫码加入千人跳槽求职QQ群或微信圈子,每日都有全国招聘信息哦 中文编码问题总是让人头疼(尤其是mac本),想要用Python读取word中的内容.用open()经常报错,通过百度搜索+问身边小 ...
- python显示目录中的文件_Python中的文件和目录操作实现
Python中的文件和目录操作实现 对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数.重要的是,这 ...
- python处理json文件_python处理json文件
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python类型转换json类型的对应关系? json类型转换到python的类 ...
最新文章
- java 排队任务_android实现排队任务
- QML和C++混合编程--(二)
- 华为2017年财报,为何6036亿销售收入,净利润才479亿?
- spring mvc学习(60):ssm项目整合
- NOIP2015普及组第1题 45 金币 方法三(python3实现)
- 计算机网络及应用的说课稿,第一课计算机网络及应用说课稿
- Win10 64位安装SQL2000(个人版)
- python写入中文到文件乱码的问题
- Delphi 调用Domino Lotus OA
- 京东线报接口 全网一手线报全网(京东,淘宝,天猫)最全优惠信息
- MyBatis-Plus配置全局sql注入器后,BaseMapper中方法失效
- 【安全知识分享】PPTX|精益安全管理(130页)(附下载)
- LM2596电路简析
- 迈向高算力、跨域融合新拐点,智能座舱各路玩家如何卡位?
- 群智能(SI)与蚁群优化(ACO)概述
- 使用NAudio音频文件剪切指定片段
- 张鑫溢:9.21黄金原油独家操作建议指导.
- abb机器人过载报错_ABB机器人常见报警代码与解决方案
- 你知道管理的精髓是什么吗?-进度猫带你走进管理者的世界
- Waymo object detect 2D解决方案论文拓展
热门文章
- 第三方开发工具—PyCharm(安装、使用、汉化)超详细、图超多、注脚特多(Windows操作系统)
- IP变更导致redis集群不可用解决办法
- 怎么调整计算机的音量,笔记本音量怎么调_如何调整笔记本电脑的音量-win7之家...
- 关于粮食浪费问题的调查报告
- MySQL数据库基本操作,命令行创建数据库、数据表,查询语句,模糊查询、范围查询、判断查询
- 短信服务器和运营商的区别,什么是短信服务商?与短信运营商的区别
- 仿节奏大师java_HelloCpp 仿节奏大师Android游戏版本,只实现了击键功能,可以给大家启发. 238万源代码下载- www.pudn.com...
- matlab中zeros()函数与ones()函数用法
- 图形用户界面GUI(一)
- 建设工程施工合同系列一建工合同的范围(未完待续)