Python3实战系列之七(获取印度售后数据项目)
问题:续接上一篇。说干咱就干呀,勤勤恳恳写程序呀!
目标:此篇开始进入正题了。为实现我们整个项目功能而开始实现各个子模块功能。首先实现第一篇列出的分步功能模块的第四步:
4、python读取excel文件
解决方案:查找python读取.xlsx文件的相关资料,编写涉及的功能函数,并将其封装在一个通用的ExcelHelper类中。这样方便使用和维护。
具体实践:
1、新建了一个类: ExcelHelper.py。首行添加代码:import xlrd,引用 xlrd包。
2、创建获取sheet表数据的功能函数。参数为文件路径及名称,要获取数据的sheet表的序号。返回一个二维数组。
def get_array_from_excel_file(self, file_path_name, sheet_index=0):
"""
获取excel文件数据
:param file_path_name: 文件路径
:param sheet_index: 读取的工作表索引
:return: 二维数组 [['姓名', '手机号'], ['JOHSN', 13700137000], ['JAMES', 13900013900]]
"""
workbook = xlrd.open_workbook(file_path_name)
# all_sheets_list = workbook.sheet_names()
# print("本文件中所有的工作表名称:", all_sheets_list)
# 按索引读取工作表
sheet = workbook.sheet_by_index(sheet_index)
print ("工作表名称:", sheet.name)
print("行数:", sheet.nrows)
print("列数:", sheet.ncols) # 按工作表名称读取数据
# second_sheet = workbook.sheet_by_name("b")
# print("Second sheet Rows:", second_sheet.nrows)
# print("Second sheet Cols:", second_sheet.ncols)
# 获取单元格的数据
# cell_value = sheet.cell(1, 0).value
# print("获取第2行第1列的单元格数据:", cell_value)
arr_data = []
for i in range(0, sheet.nrows):
arr_data.append(sheet.row_values(i))
return arr_data
Python3实战系列之七(获取印度售后数据项目)的更多相关文章
- Python3实战系列之一(获取印度售后数据项目)
问题:公司在印度开设生产工厂并在当地销售手机,生产.销售系统均由印度开发维护.对总部需要的售后数据,采用每日在ftp上提供一个.xlsx文件,给总部使用.总部需要将此数据导入到总部的销量统计系统中,以 ...
- Python3实战系列之九(获取印度售后数据项目)
项目现状:已经部署在服务器上并正常运行了. 1.服务器上的部署 2.下载到服务器的文件列表 3.转存在到数据库SQL Server中的数据 项目总结:这次项目采用python来实现,刚开始还是有点担忧 ...
- Python3实战系列之八(获取印度售后数据项目)
问题:续接上一篇.说干咱就干呀,勤勤恳恳写程序呀! 目标:此篇开始进入正题了.为实现我们整个项目功能而开始实现各个子模块功能.首先实现第一篇列出的分步功能模块的第五步: 5.python连接SQL S ...
- Python3实战系列之六(获取印度售后数据项目)
问题:续接上一篇.说干咱就干呀,勤勤恳恳写程序呀! 目标:此篇我们试着把python程序打包成.exe程序.这样就可以在服务器上运行了.实现首篇计划列表功能模块的第三步: 3..exe文件能在服务器上 ...
- Python3实战系列之四(获取印度售后数据项目)
问题:续接上一篇.说干咱就干呀,勤勤恳恳写程序呀! 目标:此篇开始进入正题了.为实现我们整个项目功能而开始实现各个子模块功能.首先实现第一篇列出的分步功能模块的第一步: 1.python访问ftp,下 ...
- Python3实战系列之二(获取印度售后数据项目)
问题:续接上一篇.说干咱就干呀,勤勤恳恳写程序呀! 目标:安装python和pycharm.要编写并运行python程序就需要电脑有开发工具和运行环境,所以此篇就是安装编辑和运行python程序的软件 ...
- Python3实战系列之五(获取印度售后数据项目)
问题:续接上一篇.说干咱就干呀,勤勤恳恳写程序呀! 目标:此篇我们试着把python程序打包成.exe程序.这样就可以在服务器上运行了.实现首篇计划列表功能模块的第二步: 2.将python程序转为 ...
- Python3实战系列之三(获取印度售后数据项目)
问题:续接上一篇.说干咱就干呀,勤勤恳恳写程序呀! 目标:实现第一个python程序的“Hello world!” 解决方案:新建一个项目Test,创建一个Test.py文件.在文件中实现打印出“He ...
- memcached实战系列(七)理解Memcached的数据过期方式、新建过程、查找过程
1.1.1. 新建Item分配内存过程 1:快速定位slab classid,先计算Item长度 key键长+flag+suffix(16字节)+value值长+结构大小(32字节),如90byte ...
随机推荐
- maven打包时报错:-source 1.5 中不支持 diamond 运算符
报错现象: 解决方法: 在pom文件中加入下面依赖 <build> <plugins> <plugin> <groupId>org.apache.mav ...
- python之路——7
王二学习python的笔记以及记录,如有雷同,那也没事,欢迎交流,wx:wyb199594 复习 1. 小数据池 int -5---256 str 特殊字符 *202. ASCII码 8位 1字节 - ...
- MySQL架构之 主从+ProxySQL实现读写分离
准备服务器: docker run -d --privileged -v `pwd`/mysql_data:/data -p 3001:3306 --name mysql5-master --host ...
- vue+窗格切换+田字+dicom显示_02
环境:vue+webpack+cornerstone ide:vs code 需求:窗格设置+拼图设置 分析: 由于时间的原因,我也没有Baidu更好的显示窗格的方法,所以使用比较笨的方法,通过组件显 ...
- 用java打印图形
代码如下 public static void main(String[] args) { for (int i = 0; i <7; i++) { for (int j = 0; j < ...
- GC(垃圾处理机制)面试题
1: 详细解释Java中垃圾收集的主要流程. 垃圾收集主要有两种形式:手工.自动 自动会不定期进行回收,以释放无用的空间 手工调用的是System类中的gc()方法,此方法实际上调用的是Runtim ...
- Idea中运行项目时出现:未结束的字符串解决方案
一般出现这种情况是编码不一致导致 解决办法: settings>file Encodings 编码设置成一致
- delphi WebBrowser IPv6
We discovered one or more bugs in your app when reviewed on iPhone running iOS 11.4 on Wi-Fi connect ...
- idea导入项目
1. 2.导入项目 3.右键项目选择web 4.编辑添加tomcat 5.添加jar.包 6. 7.右键put into 8.安装tomcat 9.引入tomcat 10.把项目布署到tomcat
- 003之MFCSocket异步编程(指针机制)
002篇是采用传统方式创建,不适应动态的网络环境,服务器为客户端保留着断开连接时的套接字,不够灵活.而采用指针机制不仅可以更加灵活性,而且能使代码更集中,更具有条理性.将其转变成指针机制.功能及运行保 ...