Python for循环没有运行

时间:2016-07-08 00:04:25

标签: python python-2.7 csv for-loop

我正在编写一个涉及id的简单命令行程序,我想让它每次运行一个函数时都应该为CSV文件添加一个值。我做了一个我认为有用的功能,但显然没有。我的一个for循环没有正确运行;(这是我的代码:

def addId(id):
    file = open(ID_FILE_PATH, 'wb+')
    read = csv.reader(file)
    write = csv.writer(file)

    existingRows = []
    existingRows.append(id)

    for rows in read:  # This does not run
        print rows
        if len(rows) > 0 and rows[0] not in existingRows:
            existingRows.append(rows[0])

    for rows in existingRows: # This runs
        write.writerow([rows])

    file.close()

抱歉我的英文不好。

1 个答案:

答案 0 :(得分:2)

使用以下命令打开文件:

file = open(ID_FILE_PATH, 'wb+')

According to the documentation

  

请注意' w +'截断文件

你截断了文件,所以难怪没有什么可读的!请改用rb+