문제

CSV Writer/Reader 객체가 인스턴스화 된 후 사용하는 파일 객체에 액세스 할 수있는 방법이 있습니까? CSV 모듈을 열었고 콘테스트가 구축 된 것 같습니다. 파일 객체를 속성으로 설정하려고 시도했지만 다음 오류가 발생합니다.

AttributeError: '_csv.writer' object has no attribute 'fileobj'
도움이 되었습니까?

해결책

csv.writer "내장 된"기능입니다. 즉, 파이썬이 아닌 컴파일 된 C 코드로 작성되었습니다. 따라서 파이썬 코드에서 내부 변수에 액세스 할 수 없습니다.

그것은 확실하지 않습니다 파일 개체를 찾으려면 CSV.Writer 개체를 검사해야합니다. 객체를 만들 때 해당 객체가 지정됩니다.

w = csv.writer(fileobj, dialect, ...)

따라서 나중에 해당 객체에 액세스 해야하는 경우 다른 변수에 저장하십시오.

다른 팁

내가 알 수있는 것에서, CSV 객체에 넣으면 파일 객체를 다시 꺼내는 간단한 방법이 없습니다. 저의 접근 방식은 아마도 CSV 작가와 독자를 서브 클래스하는 것일 것입니다. 물론 이것은 공장 기능이 만드는 클래스 유형에 직접 액세스 할 수있는 능력을 가정합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top