Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django文件字段中的DOS/Unix/Mac文本类型_Python_Django_Text Files_Django File Upload - Fatal编程技术网

Python django文件字段中的DOS/Unix/Mac文本类型

Python django文件字段中的DOS/Unix/Mac文本类型,python,django,text-files,django-file-upload,Python,Django,Text Files,Django File Upload,我有一个django表单,它接受一个文本文件,我直接在视图方法中处理它。它工作得很好,直到最近有人尝试上传在Mac上创建的文本文件,该文件有不同的换行符(\r),并且该函数将整个文件视为一行。我的印象是python以一种通用的方式处理换行符——我能做些什么来解决这个问题呢?我正在Linux服务器上运行django 1.5和python 2.7 以下是使用的代码片段: def get_students(self, request, form): for line_num, line in

我有一个django表单,它接受一个文本文件,我直接在视图方法中处理它。它工作得很好,直到最近有人尝试上传在Mac上创建的文本文件,该文件有不同的换行符(\r),并且该函数将整个文件视为一行。我的印象是python以一种通用的方式处理换行符——我能做些什么来解决这个问题呢?我正在Linux服务器上运行django 1.5和python 2.7

以下是使用的代码片段:

def get_students(self, request, form):
    for line_num, line in enumerate(form.files['bulk_file']):
        ...

def post(self, request, *args, **kwargs):
    credit = Credit.objects.get(id=self.kwargs['pk'])
    form_class = self.get_form_class()
    form = form_class(request.POST, request.FILES, credit=credit)
    if form.is_valid():
        for student in self.get_students(request, form):
        ....

请显示用于处理此文件的代码。您是否正在使用
csv
模块?它应该能正确地处理它。@Cfreak-添加了代码,并进行了更新,以指定它只是一个纯文本文件(它是一个单列CSV,所以我想它不是真正的CSV)。