关于python中的列表

时间:2016-02-29 19:42:27

标签: python-3.x

我有一个带有列的excel文件,其中值的格式为25/02/2016。我想在列表中保存所有这些日期行。每行都是一个单独的值。我该怎么做呢?到目前为止,这是我的代码:

我有一个带有列的excel文件,其中值的格式为25/02/2016。我想在列表中保存所有这些日期行。每行都是一个单独的值。我该怎么做呢?到目前为止,这是我的代码:

import openpyxl
wb = openpyxl.load_workbook ('LOTERIAREAL.xlsx')
sheet = wb.get_active_sheet()
rowsnum = sheet.get_highest_row()
wholeNum = []
for n in range(1, rowsnum):
    wholeNum = sheet.cell(row=n, column=1).value

print (wholeNum[0])

当我使用print语句时,而不是打印应该是列表中第一项的第一行的值,例如25/02/2016,它打印的行的第一个字符是数字2.显然它正在切割日期。我希望第一行和后续行保存为列表中的单独项目。我究竟做错了什么?提前致谢

2 个答案:

答案 0 :(得分:0)

wholeNum = sheet.cell(row=n, column=1).value将单元格的值分配给变量wholeNum,因此您永远不会向初始空列表添加任何内容,只是每次都会覆盖该值。当您在结尾处调用wholeNum[0]时,wholeNum是读取的最后一个字符串,并且您将获得它的第一个字符。

您可能希望wholeNum.append(sheet.cell(row=n, column=1).value)累积一个列表。

答案 1 :(得分:0)

wholeNum = 

这是一项任务。它使名称wholeNum引用=运算符右边的表达式求值的任何对象。

for ...:
    wholeNum = ...

在循环中执行赋值通常没用。名称wholeNum将指代在循环的最后一次迭代中为其分配的任何值。其他迭代没有明显的效果。

要将值附加到列表,请使用.append()方法。

for ...:
    wholeNum.append( ... )

print( wholeNum )
print( wholeNum[0] )