擅长:python、mysql、java
<p>有几种方法可以解决这个问题:最简单的方法是使用csv编写器,并将其写入文件,而不是打印到控制台</p>
<p>以您的代码为基础:看起来可能是这样的</p>
<pre><code>import csv
with PLC() as comm:
with open("output_file.csv",'w') as f:
csv_writer = csv.writer(f, delimiter=',')
...
#ACTUADOR 1
ACTUADOR = comm.Read('D2M_017.Status.Act._1.WBypassed')
ret = comm.GetPLCTime()
Numero_Act_EnBypass = 0
if ACTUADOR.Value == True:
Sensor = "ACTUADOR 1 WORK SENSOR EN BY PASS"
Numero_Act_EnBypass = (Numero_Act_EnBypass +1)
print(Estacion, ret.Value, "D2M017 =",Sensor)
else:
Sensor = "ACTUADOR 1 WORK OK"
csv_writer.writerow([Estacion, ret.Value,f"D2M017 = {Sensor}"])
...
</code></pre>
<p>如果您确实需要写入excel(.xsl或.xslx)文件,那么有几个包可用:xslxwriter可能是最容易使用的包之一<a href="https://xlsxwriter.readthedocs.io/" rel="nofollow noreferrer">https://xlsxwriter.readthedocs.io/</a></p>
<p>最后:如果要将任何终端命令的输出保存到文件中,可以“管道”将其输出</p>
<p>在windows和linux中,这看起来像:python_script.py>;myoutputfile.txt</p>