使用xlrd模块将xls转换为Python数组

使用xlrd模块将xls转换为Python数组,python,xlrd,Python,Xlrd,我在Excel中有一列日期格式为字符串。我需要在Python脚本中将它们作为数组使用,所以我使用这个脚本将它们转换为数组 import xlrd workbook = xlrd.open_workbook('/Users/reallymemorable/Documents/output.xlsx') worksheet = workbook.sheet_by_name('Sheet1') num_rows = worksheet.nrows curr_row = 0 #creates an a

我在Excel中有一列日期格式为字符串。我需要在Python脚本中将它们作为数组使用,所以我使用这个脚本将它们转换为数组

import xlrd
workbook = xlrd.open_workbook('/Users/reallymemorable/Documents/output.xlsx')
worksheet = workbook.sheet_by_name('Sheet1')
num_rows = worksheet.nrows
curr_row = 0

#creates an array to store all the rows
row_array = []

while curr_row < num_rows:
    row = worksheet.row(curr_row)
    row_array += row
    curr_row += 1

print(row_array[0])
编辑:

我已尝试使用.value以以下方式删除文本:

while curr_row < num_rows:
    row_array.append(worksheet.row(curr_row).value)
    curr_row += 1
当前行 行数组.append(工作表.row(curr\u row).value) 当前行+=1 但我得到了这个错误:

  File "xlrd.test.py", line 13, in <module>
    row_array.append(worksheet.row(curr_row).value)
AttributeError: 'list' object has no attribute 'value'
文件“xlrd.test.py”,第13行,在
行数组.append(工作表.row(curr\u row).value)
AttributeError:“列表”对象没有属性“值”
我还尝试了下面提到的列表理解方法,得到了一个类似的错误。

而不是:

print(row_array[0])
# text:'09/30/2018-09/26/2018
指定值:

print(row_array[0].value)
# 09/30/2018-09/26/2018
这里的问题是
row\u array[0]
是一个数组,要访问此单元格的内容,需要添加
value

要将此更改应用于所有单元格,可以使用列表:

或者,您可以确保数组附加实际值,以:

row_array.append([row.value for row in worksheet.row(curr_row)])

我试过你的方法,但我有错误。我在上面编辑了我的原始帖子。@reallymorable try
row\u array.append([row.value用于工作表中的row.row(curr\u row)])
row_array = [row.value for row in row_array]
row_array.append([row.value for row in worksheet.row(curr_row)])