2017-03-18 95 views
-1

你能解釋我爲什麼這個代碼:如何從文本文件追加到數組內容?

from django.http import JsonResponse 
from django.core import serializers 

def getData(request): 
    arr = [] 

    with open('test1.txt') as test1: 
     arr.append(test1.read()) 
    with open('test2.txt') as test2: 
     arr.append(test2.read()) 

    serializedData = serializers.serialize('json', arr) 

    return JsonResponse(serializedData) 

返回此警告消息? :

'str' object has no attribute '_meta'

我只想追加到兩個文本文件的數組內容。這是所有

+0

顯示錯誤的完整回溯。 –

+0

你的意思 - > 在/ djangoTest/test1的AttributeError的 '海峽' 對象有沒有屬性 '_meta' 請求方法:\t GET 請求URL:\t的http://本地主機:8000/djangoTest/test1的 的Django版本:\t 1.10.6 異常類型:\t AttributeError的 異常值:\t '海峽' 對象有沒有屬性 '_meta' 異常地點:\t C:\ Python27 \ LIB \站點包\ Django的1.10。 6-py2.7.egg \ django \ core \ serializers \ base.py在serialize中,li ne 83 Python可執行文件:\t C:\ Python27 \ python.exe Python版本:\t 2.7.13 –

回答

0

這真的都在python IO docs

arr = [] 
with open('test1.txt', 'r') as test1: 
    for line in test1: 
     arr.append(line) 
with open('test2.txt', 'r') as test2: 
    for line in test2: 
     arr.append(line) 
+0

請注意,這可以做得更簡潔,我敢肯定,但這是最基本的形式/方式來閱讀從文件',這就是爲什麼我選擇這樣呈現它。 –

+0

'for(l in test2):'不是有效的語法,也不是意外的縮進。也總是建議在with語句中處理文件。 –

+0

感謝您的幫助。 但代碼返回此錯誤:SyntaxError:此行中的語法無效:for(l in test2):< - 爲什麼? –

相關問題