1. 程式人生 > >Python 寫檔案報錯TypeError的解決辦法

Python 寫檔案報錯TypeError的解決辦法

處理上傳的檔案:
        f1 = request.FILES['pic']
        fname = '%s/%s' % (settings.MEDIA_ROOT, f1.name)
        with open(fname, 'w') as pic:
            for c in f1.chunks():
                pic.write(c)


測試報錯:
TypeError at /upload/   
write() argument must be str, not bytes


把之前的開啟語句修改為用二進位制方式開啟:


        f1 = request.FILES['pic']
        fname = '%s/%s' % (settings.MEDIA_ROOT, f1.name)
        with open(fname, 'wb+') as pic:
            for c in f1.chunks():
                pic.write(c)

沒有問題了