无法使用Python 2.7写入文件

时间:2015-04-21 05:08:29

标签: python-2.7

我编写了以下代码,我能够打印出Lat和lon的解析值,但我无法将它们写入文件。我尝试了冲洗,我也尝试关闭文件,但没有用。有人可以在这里指出什么是错的。

import os
import serial
def get_present_gps():
   ser=serial.Serial('/dev/ttyUSB0',4800)
   ser.open()
                # open a file to write gps data
   f = open('/home/iiith/Desktop/gps1.txt', 'w')
   data=ser.read(1024) # read 1024 bytes
   f.write(data) #write data into file
   f = open('/home/iiith/Desktop/gps1.txt', 'r')# fetch  the required file
   f1 = open('/home/iiith/Desktop/gps2.txt', 'a+')
   for line in f.read().split('\n'):
       if line.startswith('$GPGGA'):

          try:
              lat, _, lon= line.split(',')[2:5]
              lat=float(lat)
              lon=float(lon)

              print lat/100
              print lon/100
              a=[lat,lon]
              f1.write(lat+",")
              f1.flush()
              f1.write(lon+"\n")
              f1.flush()
              f1.close()
         except:
             pass
while True:
    get_present_gps()

1 个答案:

答案 0 :(得分:0)

您使用except: pass覆盖了错误。不要那样做......永远。至少记录异常。

它肯定涵盖的一个错误是lat+",",它将失败,因为它是float+str并且它没有实现。但可能会有更多。