Python使用Socket文件传输

2024-06-16 12:48:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个从arduino接收txt文件的小程序。问题是有时它会打印一个空文件。我假设是因为代码的接收部分当时是空的。有没有人能帮我让这个代码在“t”为空时不写入文件,这样我就可以防止它写入一个空白的txt文件?谢谢

with open('sensData.txt','wb') as f:
while True:
 t = conn.recv(20)
 print t
 if not t:
    s.close()
    break
 f.write(t) #Write To File UNLESS BLANK

Tags: 文件代码程序txttrueaswithopen
2条回答
if t != "":
    f.write(t)

如果t是空的,这应该可以工作

你需要试试这个:

  with open('sensData.txt','wb') as f:
    while True:
     t = conn.recv(1)
     print t
     if t =='':
        s.close()
        break
     f.write(t)

或者您可以填充一个字符串,并在循环结束时立即写入它

  with open('sensData.txt','wb') as f:
   receivedData = ""
    while True:
     t = conn.recv(1)
     print t
     if t =='':
        s.close()
        break
     receivedData+=t

   f.write(receivedData)

相关问题 更多 >