Py之Xlrd:Xlrd的使用方法总结(获取的sheet名字/sheet索引/sheet内容/数和列数、获取整行和整列的值(列表) 、指定单元格的内容/数据类型)之详细攻略

简介: Py之Xlrd:Xlrd的使用方法总结(获取的sheet名字/sheet索引/sheet内容/数和列数、获取整行和整列的值(列表) 、指定单元格的内容/数据类型)之详细攻略


目录

Xlrd的使用方法总结

问题需求

实现代码


Xlrd的使用方法总结

问题需求

  • 打开Excel文件读取数据
  • 获取的sheet名字、sheet索引、sheet内容
  • 获取某个sheet的行数和列数
  • 获取整行和整列的值(列表)  
  • 获取指定单元格的内容、数据类型
  • 读取excel中单元格内容为日期的方式:打印时间、打印日期

实现代码

1. import xlrd
2. 
3. # 打开Excel文件读取数据
4. workbook = xlrd.open_workbook('a.xlsx');
5. 
6. # 打印所有的sheet列出所有的sheet名字
7. print(workbook.sheet_names())
8. 
9. # 根据sheet索引或者名称获取sheet内容
10. Data_sheet = workbook.sheets()[0];
11. # Data_sheet = workbook.sheet_by_index(1) 
12. # Data_sheet = workbook.sheet_by_name(u'Charts') 
13. 
14. # 获取sheet名称、行数和列数
15. print(Data_sheet.name,Data_sheet.nrows,Data_sheet.ncols)
16. 
17. 
18. # 获取整行和整列的值(列表)   
19. rows = Data_sheet.row_values(0) #获取第一行内容 
20. cols = Data_sheet.col_values(1) #获取第二列内容 
21. print(rows)
22. print(cols)
23. 
24. # 获取单元格内容的数据类型
25. # (row,col)-->(行,列)  # 相当于在一个二维矩阵中取值
26. cell_A1 = Data_sheet.cell(0,0).value # 第一行第一列坐标A1的单元格数据
27. # cell_C1 = Data_sheet.cell(0,2).value # 第一行第三列坐标C1的单元格数据
28. 
29. # cell_B1 = Data_sheet.row(0)[1].value # 第1行第2列
30. # cell_D2 = Data_sheet.col(3)[1].value # 第4列第2行
31. 
32. 
33. 
34. # 检查单元格的数据类型
35. # ctype的取值含义
36. # ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
37. print(Data_sheet.cell(4,0).ctype) 
38. 
39. 
40. # 读取excel中单元格内容为日期的方式
41. date_value = xlrd.xldate_as_tuple(Data_sheet.cell_value(4,0),workbook.datemode)
42. print(date_value) # -->(2017, 9, 6, 0, 0, 0)
43. print('%d:%d:%d' %(date_value[3:])) # 打印时间
44. print('%d/%02d/%02d' %(date_value[0:3])) # 打印日期
45.


相关文章
Pyside6-第七篇-QLineEdit文本行编辑(内设案例)
Pyside6-第七篇-QLineEdit文本行编辑(内设案例)
2075 0
|
编解码
一文详解 URLEncode
使用浏览器进行Http网络请求时,若请求query中包含中文,中文会被编码为 `%+16进制+16进制`形式,但你真的深入了解过,为什么要进行这种转义编码吗?编码的原理又是什么?
2259 0
一文详解 URLEncode
|
Python
Python报错ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
Python报错ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
3101 1
|
开发框架 .NET C#
如何判断一个 Dot Net 程序是 32 位还是 64 位?
如何判断一个 Dot Net 程序是 32 位还是 64 位?
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
1660 10
|
设计模式 开发者 Python
Python 类中引用其他类的实现详解
Python 类中引用其他类的实现详解
455 1
|
Python
心得经验总结:期权定价的BS公式
心得经验总结:期权定价的BS公式
758 0
|
Python
python中追加字符串到txt文件
python中追加字符串到txt文件
744 3
|
智能硬件
Wi-Fi 与蓝牙:差异解析
【8月更文挑战第24天】
4107 0
【干货】python xlwt写入excel操作
【干货】python xlwt写入excel操作

热门文章

最新文章