현재 파이썬 3 코드에 문제가 있습니다. 파이썬 : UnicodeDecodeError : 'ascii'코덱은 0 위치의 바이트 0xef를 디코딩 할 수 없습니다. 서수는 범위 내에 없습니다 (128)
replace_line('Products.txt', line, tenminus_str)
내가 같은 어떤 속성들로 나는 것 다른 사람과, 내가 오류를 얻을처럼이 일을 시도하고 그러나 때, 나는 UTF-8로 전환하기 위해 노력하고있어 라인 전을 위해, 추가 할 때 예 ...
.decode("utf8")
... 끝에, 나는 여전히 ascii를 사용하고 있다는 오류가 발생합니다. 나는 또한 io를 추가하는 것과 같은 다른 라인을 사용하는 다른 방법을 시도했다.
def replace_line(file_name, line_num, text):
lines = open(file_name, 'r').readlines()
lines[line_num] = text
out = open(file_name, 'w')
out.writelines(lines)
out.close()
가 어떻게이 문제를 해결하는 것입니다
: 뿅 내가 replace_line을 위해 사용하고있는 기능encoding = 'utf8'
와 쉼표입니다 추가? 필자는 파이썬을 처음 접했을 때 디버깅을 충분히 할 수 없다는 점에 유의하십시오.
편집 : 이상이 질문에 다른 수정 '중복'
편집 2 : 지금 함수와 다른 오류가 있습니다.
File "FILELOCATION", line 45, in refill replace_line('Products.txt', str(line), tenminus_str)
File "FILELOCATION", line 6, in replace_line lines[line_num] = text
TypeError: list indices must be integers, not str
이것은 무엇을 의미하며 어떻게 수정합니까?
우리에게 귀하의 stracktrace을 보여 주시고 귀하의 데이터를 보여주십시오. – Falmarri
무엇을 의미합니까? –
utf8 대신 utf8을 사용하면 파일이 bom으로 시작될 수 있습니다. – YOU