async def handle_req(self, reader, writer): await reader.readline() writer.write(b"$3\r\nbaz\r\n") await writer.drain() writer.write_eof() writer.close() await writer.wait_closed()通常,您不會在每次請求后關閉套接字。以下示例僅用于說明目的,旨在表明套接字不需要關閉。當然,您總是會讀取一行,然后根據 Redis 協議解釋數據。我們知道這里發送了兩個 GET 命令(每行 5 行,包含 2 個元素的數組的指示符,字符串的指示符,字符串值“GET”,以及字符串指示符和相應的值,即鍵)async def handle_req(self, reader, writer): print("start") for i in range(0, 2): for x in range(0, 5): print(await reader.readline()) writer.write(b"$3\r\nbaz\r\n") await writer.drain() writer.write_eof() writer.close() await writer.wait_closed()在客戶端發送是這樣完成的:print(r.get("foo"))print(r.get("bar"))time.sleep(1)最后一次time.sleep是為了確??蛻舳瞬粫⒓赐顺???刂婆_上的輸出是:startb'*2\r\n'b'$3\r\n'b'GET\r\n'b'$3\r\n'b'foo\r\n'b'*2\r\n'b'$3\r\n'b'GET\r\n'b'$3\r\n'b'bar\r\n'請注意,start僅輸出一次,這表明我們可以處理多個請求,而不必立即關閉套接字。
1 回答

慕少森
TA貢獻2019條經驗 獲得超9個贊
該代碼運行良好??磥砟牡谝恍校▽跇祟})的第一列為空,這就是為什么在開頭添加“,”的原因。也許您需要使用“data_xls.to_csv(csv_file_name,header = True,encoding = 'utf8',index = False”)參數來忽略行號。
添加回答
舉報
0/150
提交
取消