为什么我的列表中只有第一个和最后一个项目被写入文件?

时间:2016-07-08 01:56:37

标签: python web-scraping xlsx xlsxwriter

我已经编写了我的第一个webscraper,现在我正在尝试将数据写入excel文件。

这是我的计划的相关部分:

with xlsxwriter.Workbook('test 2.xlsx') as workbook:
    worksheet = workbook.add_worksheet("Doctissimo's diabetes sub-forum")

    row = 0
    col = 0

    for time, handle, post, URL in list(zip(time_stamps, handles, post_contents, URLs)):

       print(time, handle, URL)

       worksheet.write(row, col, time)
       worksheet.write(row, col+1, handle)
       worksheet.write(row, col+2, post)
       worksheet.write(row, col+3, URL)

       row = +1

我的问题是只有每个列表的第一个和最后一个项目(time_stamps,handle,post_contents,URL)被写入文件。

压缩列表长度相等(我使用print(len(list))检查,其他项目不为空(也使用print检查)。我做错了什么?

1 个答案:

答案 0 :(得分:0)

系统地发现一些bug的一种方法是使用print语句,每行应该增加1行,如果你在行之后放一个print语句,你应该能够看到错误。

        var qandADictionary = new Dictionary<string, int[]>
        {
            {"What is 1 + 1?", new[] {1, 2, 3, 4}},
            {"What is 1 + 2?", new[] {1, 2, 3, 4}},
            {"What is 1 + 3?", new[] {1, 2, 3, 4}},
            {"What is 1 + 4?", new[] {2, 3, 4, 5}}
        };
        foreach (var pair in qandADictionary)
        {
            var stringArray = Array.ConvertAll(pair.Value, i => i.ToString());
             Console.WriteLine(string.Format("{0},{1}", pair.Key, string.Join(" ", stringArray)));
        }
        Console.ReadKey();

我第一次没看到= +1。但行的价值永远不会改变。