一个非常简单的代码,但TypeError:'int'对象不可迭代

时间:2015-05-05 13:16:43

标签: python python-2.7

我正在编写我的第一个程序并接收 测试时出错。下面是代码片段的开头部分 我的程序是第一次抛出这个问题。我已经改变了一些东西,它有效,感谢@jmcnamara,但是我想要显示erreur的图表,从1到100.但我无法到达。

#coding=utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf8')

import xlsxwriter
import random

workbook = xlsxwriter.Workbook('tableau.xlsx')
worksheeta= workbook.add_worksheet()
worksheetb= workbook.add_worksheet()

Nb_Mesures = 100
critere = 0.03

format=workbook.add_format()    
format.set_border(1)  

format_ave=workbook.add_format()    
format_ave.set_bold()  
format_ave.set_align('center')


format_num=workbook.add_format()
format_num.set_num_format('0.00')   
format_num.set_align('center')

#creerer le worksheeta
worksheeta.write('A1', 'Nb_Mesures', format_ave)
worksheeta.write('B1', 'angle_aleatoire', format_ave)
worksheeta.write('C1', 'angle_mesuré',format_ave)
worksheeta.write('D1','erreur',format_ave)

worksheeta.set_column(0, 1, 13)
worksheeta.set_column(1, 1, 15)
worksheeta.set_column(2, 1, 20)
worksheeta.set_column(3, 1, 10)


data1 = []
data2 = []
data3 = []
data4 = []


for row in range(1, Nb_Mesures + 1):
    b = random.randrange(0, 360)
    c = b*(1+0.02)
    d = ( - b * 0.02)
    data1.append(row)
    data2.append(b)
    data3.append(c)
    data4.append(d)


worksheeta.write_column('A2', data1, format_ave)
worksheeta.write_column('B2' ,data2, format_num)
worksheeta.write_column('C2', data3,  format_num)
worksheeta.write_column('D2', data4, format_num)


charta  = workbook.add_chart({'type' : 'line'})

def chart_series(cur_clo):
        charta.add_series({

            'values': '=Sheeta!$D$'+cur_clo,
            })

for cline in range(2 , 101):
    chart_series(str(cline))

worksheeta.insert_chart('F2',charta)
charta.set_size({'width': 1000, 'height': 500})

workbook.close()

1 个答案:

答案 0 :(得分:2)

您应该发布完整的工作程序。并附加错误输出也很有用。

代码中存在很多错误:

  1. 没有任何代码可以创建工作簿,添加工作表,最后关闭工作簿。
  2. 没有任何代码可以创建格式对象。
  3. Nb_Mesures尚未定义。
  4. write_column()将列表作为参数,您只传递一个元素。这是(当前)主题行中的错误。
  5. 最后一个应该是:

    worksheeta.write_column('A2', data1, format_ave)
    # etc.