[自动编写文本文件的python脚本

问题描述 投票:0回答:2

[我使用在ASCII文件上创建的算法,因此通常我必须从头开始手动编写命令。

我正在考虑利用python的能力使流程自动化。最终的ASCII文件有多行,每节都是一个单独的命令,在这之后有一组特定的标准和附加选项

我的问题是我该如何开始写类似的东西。我一直在使用python从数据操作中输出文件的功能,但是使用多行对我来说似乎是新的。

Python的目标是自动写特定长度的单词,然后要求用户输入要在指定位置输入的数字或单词。

我的文件是这样的,用大写字母是标准的写命令,而用'CAPITAL'或'NUMBER'是我要输入的选项集。

PROJECT 'name' 'nr'
SET 'maxerr' 'cdcap' 'inhorg' 'hserr' 'NAUTICAL or CARTESIAN' 'pwtail'
MODE NONSTATIONARY 'TWODIMENSIONAL or ONEDIMENSIONAL'  

.....(the list goes on)

COMPUTE NONSTAT 'starting date input' 'time interval' 'ending date input'
STOP

运行脚本时我要记住的是这样

enter name of project =
enter number of project

enter maxerr =  (if no maxerr is entered then proceed to the next input, without writing MAXERR in the file)

我的目标是让终端要求用户输入一个值或字符串,然后将其写入并合并到最终文件中,结果是这样的。

PROJECT 'myname' '1'
SET MAXERR 200 INHORG 1 HSERR 0.9 NAUTICAL PWTAIL 2
MODE NONSTATIONARY ONEDIMENSIONAL
........
COMPUTE 20100101.000000 1 HR 20100102.0000
STOP

非常感谢您的帮助

python input automation ascii output
2个回答
1
投票

向文件写多行与写一行没有什么特别的不同。一行以换行符"\n"终止,该字符后的所有内容均在下一行。

所以:

f = open("outfile.txt", "w")
f.write("First ")  # No newline, line continues
f.write("line")  
f.write("\n")      # Line ends!
f.write("Second line\n")  # Newline character in the same write
f.close()

您也可以在之间调用其他功能:

f = open("outfile.txt", "w")
f.write("User input: ")
user_input = raw_input("Your input? ")
f.write(user_input)
f.write("\n")
f.close()

这应该使您至少可以尝试解决问题。祝好运! :-)


-4
投票

如果我在每张照片的表单中都有文本文件怎么办

类w1 h1 w2 h2 ....

而且我需要新的文本文件,形式与上面的一样

图像w1,h1,w2,h2 ....,类的路径

此文件是锚框注释,我需要它们以不同的形式。如何自动执行此过程,而不要手工编写?

© www.soinside.com 2019 - 2024. All rights reserved.