저는 파이썬의 readline()을 사용하여 한 줄씩 읽을 텍스트 파일을 mysql으로 읽어들입니다.python readline이 파일 끝을 잘못 판단했습니다
내가 겪고있는 문제는 텍스트 파일에 100 개 이상의 행이 있지만 75 행의 빈 줄은 0d0a입니다. readline()은 파일이 끝까지 도달하여 멈추는 것으로 생각합니다.
어떻게 방지합니까?
대단히 감사합니다.
P.
for line in ipv4file:
if line:
lineSplit = line.split()
ip_start = lineSplit[0]
# define a tuple data to hold the parameters, remove all the leading and trailing blank spaces
data = (lineSplit[0].lstrip().rstrip(), lineSplit[1].lstrip().rstrip(), lineSplit[2].lstrip().rstrip())
sqltemplate = """
insert into ipv4(ip_start, ip_end, ip_owner) values (%s, %s, %s)
"""
이 있습니다 직전 1.6.0.0
0D 0A 0D 0A을하는 아래는 샘플 파일에서 내 코드 부분입니다감사합니다.
파일 중간에 빈 줄과 같은 것은 없습니다. 마지막 줄 이외의 모든 줄에는 끝에 줄 바꿈이 있습니다. – TigerhawkT3
이 문제를 재현 할 수 없습니다. –
'readline'은 그 행을'\ n "(또는"\ r \ n ")으로 읽어야하고 다음 행을 계속 읽어야합니다. 이것이 실패한 예를 게시 할 수 있습니까? 어쩌면 100+ 라인 파일을 가져 와서 대부분을 다듬고 남아있는 것을 게시하십시오. print (base64.encodestring (open ('f.py', 'rb'). read()). decode ('ascii')) '이렇게 base64 문자열을 디코딩하여 정확한 결과를 얻을 수도 있습니다. 파일 다시. – tdelaney