当前位置:首页 » 编程语言 » python修改txt

python修改txt

发布时间: 2023-01-04 03:07:59

1. python怎么修改一个文件

通常的做法是先将文件的所有内容读入内存,修改后再全部写回原文件。

如果文件中所有数据的偏移地址都是固定的,那么可以以r+方式打开文件,将文件指针移动到要修改的数据处,写入新数据覆盖即可。

2. python中怎么进行txt文件的修改

# 导入正则包
import re
# 打开你的文件
with open('data.txt','r') as f:
# 读取文件内容
content = f.read()
# 使用正则替换
res = re.sub('b1', 'b2', content)
print(res)

楼主可以具体查一下re.sub()的使用,希望能帮到你
待你强大...

3. Python 问题 我该如何快速的重载、刷新一个TXT文件

记录最后一次修改时间,没有变动就不需要再读取内容了

4. 怎样用python修改另外一个文件的参数,如修改.txt文件的里面某一个参数

刚好其他有个问题涉及你的问题,我直接给你贴可以运行的代码,纯手工额:
#coding=utf-8
'''
Created on 2012-6-4

@author: Administrator

@note:
以下是具体代码:
我用的Python2.7
需要在当前文件夹下创建script.py
'''
import wx
import wx.grid

class TestPanel(wx.Panel):

def __init__(self, parent):
wx.Panel.__init__(self, parent)

#修改位置,在读取的时候获取,在修改文件的时候使用
self.offsetx = 0
self.offsety = 0

self.initGUI()

def initGUI(self):
self.createWidgets()
self.setPrepertise()
self.doyout()

def createWidgets(self):
self.xshow_textCtrl = wx.TextCtrl(self, -1)
self.yshow_textCtrl = wx.TextCtrl(self, -1)
self.change_btn = wx.Button(self, -1, label = u"修改")

self.Bind(wx.EVT_BUTTON, self.onChange, self.change_btn)

def onChange(self, evt):
#获取修改的属性
x = self.xshow_textCtrl.GetLabelText()
y = self.yshow_textCtrl.GetLabelText()

fl = open("script.py", "w")
#找到相应位置修改
fl.seek(self.offsetx)
fl.write("x = %s\n" % x)
fl.seek(self.offsety)
fl.write("y = %s\n" % y)
fl.close()

def doyout(self):
mainSizer = wx.BoxSizer(wx.VERTICAL)
self.SetSizer(mainSizer)

#x显示
xSizer = wx.BoxSizer(wx.HORIZONTAL)
mainSizer.Add(xSizer, 1, wx.EXPAND)
x_label = wx.StaticText(self, -1, label = "X:")
xSizer.Add(x_label, 0, wx.ALL, 10)
xSizer.Add(self.xshow_textCtrl, 0, wx.ALL, 10)

#y显示
ySizer = wx.BoxSizer(wx.HORIZONTAL)
mainSizer.Add(ySizer, 1, wx.EXPAND)
y_label = wx.StaticText(self, -1, label = "Y:")
ySizer.Add(y_label, 0, wx.ALL, 10)
ySizer.Add(self.yshow_textCtrl, 0, wx.ALL, 10)

#按键
mainSizer.Add(self.change_btn, 0, wx.ALL, 10)

def setPrepertise(self):
x, y = self.getXY()
self.xshow_textCtrl.SetLabel(str(x))
self.yshow_textCtrl.SetLabel(str(y))

def getXY(self):
fl = open("script.py", "r")
msg = ""
line = fl.readline()
while line and line[-1]:

if line.startswith("x"):
msg += line
self.offsetx = fl.tell() - len(line)#得到x那行的起始位置
elif line.startswith("y"):
msg += line
self.offsety = fl.tell() - len(line)#得到y那行的起始位置
line = fl.readline()
x = 0
y = 0
exec msg#给x,y赋值
return x, y

class TestFrame(wx.Frame):

def __init__(self, *args, **kwargs):
wx.Frame.__init__(self, None, title = u"测试Frame", size = (400, 300),
pos = (400, 200))
TestPanel(self)

if __name__ == '__main__':
app = wx.PySimpleApp()
frame = TestFrame()
frame.Show()
app.MainLoop()

5. 如何用python 修改txt文件

def modifyip(tfile,sstr,rstr):
try:
lines=open(tfile,'r').readlines()
flen=len(lines)-1
for i in range(flen):
if sstr in lines[i]:
lines[i]=lines[i].replace(sstr,rstr)
open(tfile,'w').writelines(lines)

except Exception,e:
print e

modifyip('a.txt','a','A')

1

6. 利用python将docx文件转为txt

背景:工作中需要将文件夹下的若干word文件docx转换为对应txt文本格式

因此需要将docx中文本读取出来,然后保存为txt格式即可

需要的python模块为 python-docx : https://python-docx.readthedocs.io/en/latest/index.html, 导入模块时候导入docx

(只能读取.docx文件,不能读取.doc文件)

注意,在PyPi里还有一个叫docx的库,已经停止更新,不建议使用)

http://www.cnblogs.com/geek-arking/p/9300617.html

上面的方法只能读取docx文件,如果读取doc会报错

结果报错:docx.opc.exceptions.PackageNotFoundError: Package not found。还是无法识别doc

“改变拓展名并没有改变其编码方式,因此无法读取文本内容,需将doc文件用word另存为docx后再用python-docx读取其内容”

对于要转换的doc文件,网上的资料都是使用win32,需要安装 pypiwin32

https://www.cnblogs.com/AlgorithmDot/p/3386918.html

通过上面的方法,有时可以直接将doc转换为txt文件,有时候会报错。

这里我们可以考虑将doc文件直接转换为docx然后再通过上面的方法读取为txt,如果手动将doc修改为txt或者docx,打开文件会显示乱码,但是可以用其提供的SaveAs方法将.doc文档利用手动的方式“另存为”.docx文档,就能够成功打开转化后的.docx文档,

doc.SaveAs(tmp +'.docx', 16)

其中16的含义如下:

利用win32com接口直接调用office API,好处是简单、兼容性好,只要office能处理的,python都可以处理,处理出来的结果和office word里面“另存为”一致。

下面是office 2007支持的全部文件格式对应表:

wdFormatDocument = 0 

wdFormatDocument97 = 0 

wdFormatDocumentDefault = 16 

wdFormatDOSText = 4 

wdFormatDOSTextLineBreaks = 5 

wdFormatEncodedText = 7 

wdFormatFilteredHTML = 10 

wdFormatFlatXML = 19 

wdFormatFlatXMLMacroEnabled = 20 

wdFormatFlatXMLTemplate = 21 

= 22 

wdFormatHTML = 8 

wdFormatPDF = 17 

wdFormatRTF = 6 

wdFormatTemplate = 1 

wdFormatTemplate97 = 1 

wdFormatText = 2 

wdFormatTextLineBreaks = 3 

wdFormatUnicodeText = 7 

wdFormatWebArchive = 9 

wdFormatXML = 11 

wdFormatXMLDocument = 12 

= 13 

wdFormatXMLTemplate = 14 

= 15 

wdFormatXPS = 18

照着字面意思应该能对应到相应的文件格式。

1、新建或打开文件。这个比较简单用docx的Document类,若指定路径则是打开文档;若没有指定路径则是新建文档

2、保存文件。有打开,就有保存。用Document类的save方法,其中参数是保存的文件路径,或者要保存的文件流。一般指定路径即可。

doc.save(path_or_stream)

3、对象集合。python-docx包含了word文档的相关对象集合。

4、插入段落。段落是word最基本的对象之一。

5、新增样式。这个帮助文档里面说得不仔细,而且还是英文的。我手头上的项目用到这个,就自己琢磨出怎么使用,如下。

6、应用字符样式。字符自然是在段落里面的,可以采用下面方法给段落追加文字和设置字符样式。

#插入一个空白段落

p = doc.add_paragraph('')

p.add_run('123', style="Heading 1 Char")

p.add_run('456')

p.add_run('789', style="Heading 2 Char")

#这样一个段落就应用了两个字符样式,中间“456”就没应用样式

printp.text#输出结果是u'123456789' 也还是连续的

7、设置字体。当然可以不用通过设置样式对某些字进行设置,也可以直接设置。

p = doc.add_paragraph('')

r = p.add_run('123')

r.font.bold =True#加粗

r.font.italic =True#倾斜 等等...

8、表格操作。表格也是经常用到的一种对象类型。

7. python使用正则表达式替换txt内容

s='kfhakl,"dasf,fwg,gs,fatg,ta,",fasf,aga,wr,ga,czxv,"fsafa,rqr,cacv,",dasc'
l=[]
quoted=False
forchins:
ifch=='"':
quoted=notquoted
elifch==','andquoted:
l.append(',')
continue
l.append(ch)

s=''.join(l)
print(s)

8. 请问怎么用python修改txt里的数字

这种问题,如果不是多次使用,何必用python,直接导入excel,将第三列+1放回去,重新导出为txt,逗号间隔万事大吉

9. python替换txt文件中固定内容

  1. 读取之后使用字符串的 replace方法,之后 save 到 txt 即可

  2. 使用pandas 读取文件,循环遍历每个元素,利用条件判断

  3. 使用pandas读取文件, 使用apply方法,还是使用 字符串的replace方法

  4. 使用正则表达式模块re, 使用re的substring 方法或者replaece方法

10. python里怎样替换,修改文本内容

当我们读取文件中内容后,如果想要修改文件中的某一行或者某一个位置的内容,在python中是没有办法直接实现的,如果想要实现这样的操作只能先把文件所有的内容全部读取出来,然后进行匹配修改后写入到新的文件中。

实例代码如下所示:

备注:

1. 旧文件的内容

hello,world
yanyan is good girl
Good day is good day

2. 新文件在代码执行后的内容

hello,world
yanyan is good girl
hello,yanyan

3. 需要注意的是权限的问题,对于旧文件必须要有读取权限,对于新的文件必须要有写入权限

热点内容
苹果电脑取消共享文件夹 发布:2025-07-05 07:06:00 浏览:347
机器学习算法应用 发布:2025-07-05 07:01:17 浏览:32
万能解压缩王 发布:2025-07-05 06:51:56 浏览:541
手机怎么修改wifi密码名称 发布:2025-07-05 06:46:13 浏览:381
阿里云服务器bt安装 发布:2025-07-05 06:36:46 浏览:370
数据库组别 发布:2025-07-05 06:15:53 浏览:711
我的世界服务器怎样设置新手装备只能拿一次 发布:2025-07-05 06:15:53 浏览:985
缓存40集电视剧需要多少流量 发布:2025-07-05 05:56:44 浏览:64
iso怎么解压到u盘 发布:2025-07-05 05:49:02 浏览:890
php参数设置 发布:2025-07-05 05:49:00 浏览:995