python操作execl学习笔记(一)
本节只记录关于execl的读操作:
execl 内容及格式

python3
#!/usr/bin/env python
#-*- coding:utf-8 -*- import xlrd
import xlwt
import datetime
def read_file():
###打开execl文件
file_name = xlrd.open_workbook("C:\\Users\\admin\\Desktop\\关键词统计.xlsx")
#### 获取所有sheet名称,得到一个列表 ['10-28', '10-29', '10-30', '10-31', '11-1']
print (file_name.sheet_names()) ###打印所有sheet名称 # 根据sheet索引或者名称获取sheet内容
sheet_1031 = file_name.sheet_by_index(3) ###根据索引获取sheet名称及内容
sheet_1031bak = file_name.sheet_by_name('10-31') #### 根据sheet名称获取内容
# sheet的名称,行数,列数
print (sheet_1031.name,sheet_1031.nrows,sheet_1031.ncols)
a = sheet_1031.nrows
b = sheet_1031.ncols
### 类型说明 ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
###默认从0行0列开始算起
print (sheet_1031.cell(0,1).ctype) ###打印获得的execl值的类型(第一行第二列)
# 获取整行和整列的值
rows = sheet_1031.row_values(1) ###获取第一行的值---列表
cols = sheet_1031.col_values(2) ###获取第一列的值---列表 print (rows)
for i in range(a):
for j in range(b):
if i == 0:
break
elif (sheet_1031.cell(i,j).ctype) == 3:
year, month, day, hour, minute, second = xlrd.xldate_as_tuple(sheet_1031.cell(i,j).value,
file_name.datemode)
py_date = datetime.datetime(year, month, day, hour, minute, second)
print ("时间:",py_date)
elif (sheet_1031.cell(i,j).ctype) == 2 :
c = int(sheet_1031.cell(i,j).value)
if j == 0:
print ("整时:",c)
else:
print ("用户id:",c) elif (sheet_1031.cell(i, j).ctype) == 1:
e = sheet_1031.cell(i, j).value
if j == 3:
print ("关键词:",e)
else:
print ("ip:",e) ###列的开头从0开始,行的开头也从0刚开始
print (rows,cols)
d = int(sheet_1031.cell(1,0).value)
print (d) ####打印第二行第一列
# print (sheet_1031.cell_value(1,3)) ####打印第二行第四列
# print (sheet_1031.row(2)[4].value) ####打印第2行第4列
####打印第四行第一列的值的类型
# print (sheet_1031.cell(4,0).ctype) ### ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error ####时间拆分得到一个元组
# data_value = xlrd.xldate_as_tuple(sheet_1031.cell_value(4,1),file_name.datemode)
# print (data_value)
###默认情况下得到的时间为一个时间戳,下面代码将时间戳转化为所需要的execl时间
year, month, day, hour, minute, second = xlrd.xldate_as_tuple(sheet_1031.cell(4, 1).value,file_name.datemode)
py_date = datetime.datetime(year, month, day, hour, minute, second)
print (datetime.datetime(year, month, day, hour, minute, second)) read_file()
python操作execl学习笔记(一)的更多相关文章
- Flas-SQLAchemy数据库操作使用学习笔记
Flas-SQLAchemy数据库操作使用学习笔记 Flask-SQLALchemy 是一个给你的应用添加 SQLALchemy 支持的 Flask 扩展.SQLALchemy 是Python语言的S ...
- python网络爬虫学习笔记
python网络爬虫学习笔记 By 钟桓 9月 4 2014 更新日期:9月 4 2014 文章文件夹 1. 介绍: 2. 从简单语句中開始: 3. 传送数据给server 4. HTTP头-描写叙述 ...
- Python Built-in Function 学习笔记
Python Built-in Function 学习笔记 1. 匿名函数 1.1 什么是匿名函数 python允许使用lambda来创建一个匿名函数,匿名是因为他不需要以标准的方式来声明,比如def ...
- PHP操作MongoDB学习笔记
<?php/*** PHP操作MongoDB学习笔记*///*************************//** 连接MongoDB数据库 **////*************** ...
- Requests:Python HTTP Module学习笔记(一)(转)
Requests:Python HTTP Module学习笔记(一) 在学习用python写爬虫的时候用到了Requests这个Http网络库,这个库简单好用并且功能强大,完全可以代替python的标 ...
- Python操作redis学习系列之(集合)set,redis set详解 (六)
# -*- coding: utf-8 -*- import redis r = redis.Redis(host=") 1. Sadd 命令将一个或多个成员元素加入到集合中,已经存在于集合 ...
- delphi操作xml学习笔记 之一 入门必读
Delphi 对XML的支持---TXMLDocument类 Delphi7 支持对XML文档的操作,可以通过TXMLDocument类来实现对XML文档的读写.可以利用TXMLDocum ...
- Python快速入门学习笔记(二)
注:本学习笔记参考了廖雪峰老师的Python学习教程,教程地址为:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb49318210 ...
- python数据分析入门学习笔记
学习利用python进行数据分析的笔记&下星期二内部交流会要讲的内容,一并分享给大家.博主粗心大意,有什么不对的地方欢迎指正~还有许多尚待完善的地方,待我一边学习一边完善~ 前言:各种和数据分 ...
随机推荐
- ExaWizards 2019
AB:div 3 AB??? C:div 1 C???场内自闭的直接去看D.事实上是个傻逼题,注意到物品相对顺序不变,二分边界即可. #include<iostream> #include ...
- HDU3480-Division-斜率dp
首先想到的就是sort一下,然后每个集合都在排过序的数组里面取,不重复. 这样就推出公式dp[i][j] = min(dp[k][j-1] + (s[i]-s[k+1])^2) 其中dp[i][j]为 ...
- C#版本和.NET版本以及VS版本的对应关系
C#版本和.NET版本以及VS版本的对应关系 版本 .NET Framework版本 Visual Studio版本 发布日期 特性 C# 1.0 .NET Framework 1.0 Visual ...
- HAOI2018 简要题解
这套题是 dy, wearry 出的.学长好强啊,可惜都 \(wc\) 退役了.. 话说 wearry 真的是一个计数神仙..就没看到他计不出来的题...每次考他模拟赛总有一两道毒瘤计数TAT 上午的 ...
- 反射中Class.forName()和classLoader的区别
搞清楚两者之间区别前,我们来了解下类加载过程. 一.类加载过程 1.加载 通过一个类的全限定名来获取定义此类的二进制字节流. 将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构. 在内存中生 ...
- Spring MVC工作原理 及注解说明
SpringMVC框架介绍 1) spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面. Spring 框架提供了构建 Web 应用程序的全功 ...
- 【LOJ#6029】市场(线段树)
[LOJ#6029]市场(线段树) 题面 LOJ 题解 看着就是一个需要势能分析的线段树. 不难发现就是把第二个整除操作化为减法. 考虑一下什么时候整除操作才能变成减法. 假设两个数为\(a,b\). ...
- 「POJ3696」The Luckiest number【数论,欧拉函数】
# 题解 一道数论欧拉函数和欧拉定理的入门好题. 虽然我提交的时候POJ炸掉了,但是在hdu里面A掉了,应该是一样的吧. 首先我们需要求的这个数一定可以表示成\(\frac{(10^x-1)}{9}\ ...
- String Reconstruction (并查集)
并查集维护和我这个位置的字母连续的已经被填充的字母能到达的最右边的第一个还没有填充的位置,然后把这个位置填上应该填的东西,然后把这个位置和下一个位置连接起来,如果下一个位置还没有填,我就会把下一个位置 ...
- centos7/rhel7安装较高版本ruby2.2/2.3/2.4+
环境需求: 在Centos7.3中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比如2.2,2.3,2.4...那就有点麻烦了,譬如:我准备使用redis官方给 ...