首页 > 解决方案 > 我应该如何在 python2.7 中打印我的输出结果

问题描述

我在数组中存储了一些数据,如温度、湿度和强度,这是我的 arduino 输出和我的 python2.7 的输入,我正在根据这些数据绘制图表。我也想将 arduino 输出存储到文本文件中,但我无法做到这一点,因为我是 python 新手。

这是我的python代码

import serial
import numpy as np
import matplotlib.pyplot as plt
from drawnow import *
l=[]
t = []
h = []
arduinoData = serial.Serial('com3',115200)
plt.ion()
count=0
def makeFig():
    ax1 = plt.subplot(211)
    plt.ylim(0,100)
    plt.title('Temperature and Humidity')
    plt.grid(True)
    plt.ylabel('temp in C')
    plt.plot(t, 'ro-', label='Drgrees Celsius')
    plt.legend(loc='upper left')
    plt2=plt.twinx()
    plt.ylim(0,100)
    plt2.plot(h,'b^-',label='Humidity in %')
    plt2.legend(loc='upper right')
    ax2 = plt.subplot(212, sharex=ax1)
    plt.ylim(0,100)
    plt.grid(True)
    plt.ylabel('Intensity in Lux')
    plt.plot(l, 'ro-', label='Lux')
    plt.legend(loc='upper left')
while True:
    while (arduinoData.inWaiting()==0):
        pass
    arduinoString = arduinoData.readline()
    dataArray = arduinoString.split(',')
    lux = float (dataArray[0] )
    humd = float ( dataArray[1])
    temp = float ( dataArray[2])
    t.append(temp)
    h.append(humd)
    l.append(lux)
    drawnow(makeFig)
    plt.pause(.000001)
    count=count+1
    if(count>60):
        t.pop(0)
        h.pop(0)
        l.pop(0)

我想将 t , h , l 存储在文本文件中作为输出 帮助将不胜感激......

标签: python

解决方案


只需使用以下命令打开文件:

f = open('file.txt', 'w')

然后您可以使用以下命令写入它:

f.write("Value of t : {}".format(t))

最后关闭文件

f.close()

推荐阅读