更改ASCII文件中的值并将其另存为其他名称-Python
我有一个扩展名为.dat的ASCII文件。该文件包含如下所示的数据更改ASCII文件中的值并将其另存为其他名称-Python,python,ascii,Python,Ascii,我有一个扩展名为.dat的ASCII文件。该文件包含如下所示的数据 MPOL3_VPROFILE { ID="mpvp_1" Cycle="(720)[deg]" Lift="(9)[mm]" Period="(240)[deg]" Phase="(0)[deg]" TimingHeight="(1.0)[mm]" RampTypeO="Const Velo" RampHO="(0.3)[mm]" RampVO="(0.00625)[mm/deg]" RampTypeC
MPOL3_VPROFILE
{
ID="mpvp_1" Cycle="(720)[deg]" Lift="(9)[mm]" Period="(240)[deg]"
Phase="(0)[deg]" TimingHeight="(1.0)[mm]" RampTypeO="Const Velo"
RampHO="(0.3)[mm]" RampVO="(0.00625)[mm/deg]" RampTypeC="auto"
RampHC="(auto)[mm]" RampVC="(auto)[mm/deg]" bO="0.7" cO="0.6" dO="1.0"
eO="1.5" bC="auto" cC="auto" dC="auto" eC="auto" th1O="(14)[deg]"
现在我想用Python读取这个文件,然后将RampHO=“(0.3)[mm]”的值更改为RampHO=“(0.2)[mm]”,并将其保存为一个新的.dat文件。我该怎么做
目前我能够使用下面的代码成功地读取文件和行
import sys
import re
import shutil
import os
import glob
import argparse
import copy
import fileinput
rampOpen = 'RampHO='
file = open('flatFollower_GenCam.dat','r')
#data = file.readlines()
#print (data)
for line in file:
line.strip().split('/n')
if rampOpen in line:
print (line[4:22])
但我现在被困在如何更改浮点值并将其另存为其他名称。首先,您应该将代码发布在文本中,而不是单独的图像中。只需将每行缩进四个空格,即可将其格式化为代码 您只需逐行读取文件,更改要更改的行,然后写入输出
with open(infile, 'r') as f_in, open(outfile, 'w') as f_out:
for line in f_in:
output_line = edit_line(line)
f_out.write(output_line)
然后,您只需编写一个函数来替换字符串。为什么不将文本作为文本发布,而将其作为图片发布?究竟为什么要插入文本图片?发布文本!现在添加了一个文本而不是图像…如果您没有绑定到python,这看起来像是sed的工作。谢谢!我给出了缩进,并将其转换为代码。