我有一段代码运行一个字典,并以CSV格式输出它的值。奇怪的是,我得到了几行空白行,其中所有字典条目的输出都是空白的。我读过代码,不能理解除了逗号可以输出的行外。空白行应该包含值,所以\ n不是原因。任何人都可以建议我为什么会空白行吗?其他时候我运行失踪线出现。python输出中意外的空行
缺失行:
6415, 6469, -4.60, clerical, 2, ,,,joe,030193027org,joelj,030155640dup
使用Python 2.6.5
位代码:
tfile = file(path, 'w')
tfile.write('Rec_ID_A, Rec_ID_B, Weight, Assigned, Run, By, On, Comment\n')
rec_num_a = 0
while (rec_num_a <= max_rec_num_a):
try:
value = self.dict['DA'+str(rec_num_a)]
except:
value = [0,0,0,'rejected']
if (value[3]!='rejected'):
weightValue = "%0.2f" % value[2]
line = value[0][1:] + ', ' + value[1][1:] + ', ' + weightValue \
+ ', ' + str(value[3]) + ', ' + str(value[4])
if (len(value)>5):
line = line + ', ' + value[5] + ',' + value[6] + ',' + value[7]
(a_pkey, b_pkey) = self.derive_pkeys(value)
line = line + a_pkey + b_pkey
tfile.write(line + '\n')
rec_num_a +=1
样本输出
6388, 2187, 76.50, clerical, 1, ,,,cameron,030187639org,cameron,030187639org
6398, 2103, 70.79, clerical, 1, ,,,caleb,030189225org,caldb,030189225dup
6402, 2205, 1.64, clerical, 2, ,,,jenna,030190334org,cameron,020305169dup
6409, 7892, 79.09, clerical, 1, ,,,liam,030191863org,liam,030191863org
6416, 11519, 79.09, clerical, 1, ,,,thomas,030193156org,thomas,030193156org
6417, 8854, 6.10, clerical, 2, ,,,ruby,030193713org,mia,020160397org
6421, 2864, -0.84, clerical, 2, ,,,kristin,030194394org,connou,020023478dup
6423, 413, 75.63, clerical, 1, ,,,adrian,030194795org,adriah,030194795dup
首先学会使用内置的字符串格式化函数,http://docs.python.org/library/stdtypes.html#string-formatting – 2010-06-04 05:59:00
@fuzzy:这些都在Python 3.0中消失了,无论如何,我会说迭代风格;-) Martlark,这是'对于recrange_a在xrange(max_rec_num_a)'' – 2010-06-04 06:17:22
''我使用字符串格式错误?我没有使用内置的csv模块,因为这不是我的代码。 – Martlark 2010-06-04 06:21:41