2017-10-20 50 views
-1

讀我試圖這段代碼在Python 3.6.2從CSV文件升起值誤差

import csv 
with open ('kk.csv') as csvfile: 
    data=CSV(csvfile,delimiter=',') 
for value in data: 
    print(value)  

它產生的ValueError: I/O operation on closed file。我不明白髮生了什麼事。

+0

使用'csv.reader'方法讀取數據,而不是csv對象。 –

+0

您發佈的代碼與您運行的代碼完全相同嗎?縮進是否相同? – sera

+0

@sera是的,我已經將它與原始代碼 – kislay1812

回答

0

它實際上應該給你一個NameError因爲CSV沒有定義。

在csv模塊的文件,你可以從第一個示例https://docs.python.org/3/library/csv.html看看如何使用它:

import csv 
with open('kk.csv') as csvfile: 
    data = csv.reader(csvfile) 
    for row in data: 
     print(row) 

如果你做在這裏複製的代碼時出錯: 的ValueError提高,因爲當您指定data = CSV(csvfile)您尚未閱讀文件的內容,並且當您離開上下文時(with open...),文件將自動關閉。然後,您嘗試訪問內容。

+0

Nameerror在這個程序中沒有發生 – kislay1812

+0

吶,它的工作 – kislay1812

+0

我用data = CSV.reader(csvfile,delimiter =',') – kislay1812