Pandas:XLSX 到 CSV:作为第一个字符生成的额外逗号

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是为了确保客户端不会立即退出。


控制台上的输出是:


start

b'*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仅输出一次,这表明我们可以处理多个请求,而不必立即关闭套接字。


收到一只叮咚
浏览 110回答 1
1回答

慕少森

该代码运行良好。看来您的第一行(对应于标题)的第一列为空,这就是为什么在开头添加“,”的原因。也许您需要使用“data_xls.to_csv(csv_file_name,header = True,encoding = 'utf8',index = False”)参数来忽略行号。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python