满足条件语句时拉取特定行的数据
Pull specific rows of data when they meet a conditional statement
我正在尝试使用 xlrd 从大型电子表格中仅提取特定行的信息(对 100 多个其他电子表格反复进行)。具体来说,我需要一个脚本来梳理电子表格的行并提取以特定字符串(例如 bike
)开头的所有行。也就是说,一旦脚本找到以 bike
开头的行,我需要它打印出 bike
和它旁边的单元格中的值(也恰好是整行)。这是我到目前为止所拥有的,但在 bike
之后我不断收到语法错误:
import xlrd
workbook = xlrd.open_workbook('test.xlsx')
worksheet = workbook.sheet_by_name('Sheet1')
for row in range(worksheet.nrows):
if worksheet.row_values(row) == 'bike'
print worksheet.row_values(row)
else:
print 'Code not found'
您的语法错误是缺少冒号:
if worksheet.row_values(row) == 'bike':
但我认为此语句将始终 return 错误,因为 row_values
return 是一个切片,而不是字符串文字。您可以像这样检查第一个单元格:
if worksheet.row_values(row)[0] == 'bike':
我正在尝试使用 xlrd 从大型电子表格中仅提取特定行的信息(对 100 多个其他电子表格反复进行)。具体来说,我需要一个脚本来梳理电子表格的行并提取以特定字符串(例如 bike
)开头的所有行。也就是说,一旦脚本找到以 bike
开头的行,我需要它打印出 bike
和它旁边的单元格中的值(也恰好是整行)。这是我到目前为止所拥有的,但在 bike
之后我不断收到语法错误:
import xlrd
workbook = xlrd.open_workbook('test.xlsx')
worksheet = workbook.sheet_by_name('Sheet1')
for row in range(worksheet.nrows):
if worksheet.row_values(row) == 'bike'
print worksheet.row_values(row)
else:
print 'Code not found'
您的语法错误是缺少冒号:
if worksheet.row_values(row) == 'bike':
但我认为此语句将始终 return 错误,因为 row_values
return 是一个切片,而不是字符串文字。您可以像这样检查第一个单元格:
if worksheet.row_values(row)[0] == 'bike':