从 Python 中的行中删除换行符

Remove new line character from lines in Python

我终于写了一个从套接字接收数据的程序:

from socket import *

HOST = 'localhost'
PORT = 30003    #our port from before
ADDR = (HOST,PORT)
BUFSIZE = 4096

sock = socket( AF_INET,SOCK_STREAM)
sock.connect((ADDR))

def readlines(sock, recv_buffer=4096, delim='\n'):
 buffer = ''
 data = True
 while data:
  data = sock.recv(recv_buffer)
  buffer += data
  
  while buffer.find(delim) != -1:
   line, buffer = buffer.split('\n', 1)
   yield line
   
 return
    
for line in readlines(sock):
 print line

我正在逐行接收所需的数据,但每行末尾都有一个换行符,这对我来说不是必需的。

请告诉我如何删除每行末尾的字符。我要保存 这些数据以 CSV 格式逐行写入数据库。

此致

马诺

改变

yield line

yield line.strip('\n')

如果您在 windows 上 运行,您可能需要执行以下操作:

yield line.strip('\r\n')