失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python读取excel表格-Python读取Excel单元格的内容

python读取excel表格-Python读取Excel单元格的内容

时间:2023-05-16 04:16:07

相关推荐

python读取excel表格-Python读取Excel单元格的内容

python读取excel的单元格返回类型

Python通过xlrd对Excel进行读取操作时,返回的数据类型(ctype)有下面5中类型:

0 – empty:空

1 – string:字符串

2 – number:数字

3 – date:日期

4 – boolean:布尔

5 – error

import xlrd

import os

from LYKION.self.log import Logger

from datetime import datetime

from xlrd import xldate_as_tuple

'''

python读取excel中单元格的内容返回的5种类型

0 --empty:空

1 --string:字符串

2 --number:数字

3 --date:日期

4 --boolean:布尔

5 --error

'''

excel_path = os.path.join(os.getcwd(), 'extra.xlsx') # Excel文件路径

Logger().info('Excel文件的路径:' + excel_path)

excel_file = xlrd.open_workbook(excel_path) # 打开Excel文件

# table = excel_file.sheet_by_index(1) # 通过索引打开

# table = excel_file.sheet_by_name('mode') # 通过名字打开

table = excel_file.sheets()[1] # 通过索引打开

Logger().info('已经打开的工作簿的名字:' + table.name)

Logger().info('**********开始读取Excel单元格的内容**********')

all_content = []

for i in range(table.nrows):

row_content = []

for j in range(table.ncols):

ctype = table.cell(i, j).ctype # 获取单元格返回的数据类型

cell_value = table.cell(i, j).value # 获取单元格内容

if ctype == 2 and cell_value % 1 == 0: # 是否是数字类型

cell_value = int(cell_value)

elif ctype == 3: # 是否是日期

date = datetime(*xldate_as_tuple(cell_value, 0))

cell_value = date.strftime('%Y/%m/%d %H:%M:%S')

elif ctype == 4: # 是否是布尔类型

cell_value = True if cell_value == 1 else False

row_content.append(cell_value)

all_content.append(row_content)

# Logger().info('[' + ', '.join("'" + str(element) + "'" for element in row_content) + ']')

Logger().info(row_content)

# Logger().info(all_content)

Logger().info('**********Excel单元格的内容读取完毕**********')

Logger().info('行数:%d' % table.nrows) # 打印行数

Logger().info('列数:%d' % table.ncols) # 打印列数

Logger().info('========================')

Logger().info('第二行的内容:' + str(table.row_values(1))) # 打印一行的内容

Logger().info('第二列的内容:' + str(table.col_values(1))) # 打印一列的内容

Logger().info('========================')

# 打印单元格的内容(以下打印的是第二行第二列的单元格的内容)

Logger().info(table.cell(1, 1).value)

Logger().info(table.cell_value(1, 1))

Logger().info(table.row(1)[1].value)

Logger().info('========================')

如果觉得《python读取excel表格-Python读取Excel单元格的内容》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。