以下是我的程序片段:
with open(completepathname,'wb') as f:
print ('file opened')
print(f)
while True:
print('receiving data...')
print('hello')
data = send_receive_protocol.recv_msg(conn)
#print('hi')
print(data)
if not data:
print('printing1')
break
print('printing')
data1=data.encode()
print(data1)
f.write(data1)#write to file
f.close()
输出正确打印到控制台,但如果我打开文件它是空白的。如果我删除该文件并再次执行我的程序,则会创建该文件但仍为空
答案 0 :(得分:0)
以下代码段按预期工作:
with open('test.txt', 'wb') as f:
while True:
data = 'test-data'
if not data:
break
data1 = data.encode('hex')
f.write(data1)
f.flush()
您应该注意不要.close()
类似文件的对象,然后继续尝试写入它。如果您需要确保立即写入输出,请使用.flush()
。