python读取数据的函数详解_python从excel中读取数据传给其他函数使用

首先安装xlrd库

pip install xlrd

方法1:

表格内容如下:

1464578-20190823090949583-58485155.png

1464578-20190823090954811-1592867630.png

场景描述,读取该表格A列数据,然后打印出数据

代码何解析如下:

importxlrd #引入xlrd库defexcel():

wb= xlrd.open_workbook('F:\\script\\1024.xls')#打开Excel文件

sheet = wb.sheet_by_name('becks')#通过excel表格名称(rank)获取工作表

dat = [] #创建空list

for a in range(sheet.nrows): #循环读取表格内容(每次读取一行数据)

cells = sheet.row_values(a) #每行数据赋值给cells

data=int(cells[0])#因为表内可能存在多列数据,0代表第一列数据,1代表第二列,以此类推

dat.append(data) #把每次循环读取的数据插入到list

returndat

a= excel() #返回整个函数的值#print(a)

def test(a): #a变量传入

for b in a: #循环读取a变量list

print(b)

test(a)

print后结果

1464578-20190823091330019-1332386962.png

方法2:

如下图列表(股票数据)

1464578-20200129220056648-1445404782.png

案例预期,读取每一行的股票代码(不读取第一行),循环打印出股票代码,完整代码如下

import xlrd #引入读取excel库

import xlwt #引入写入excel库

import requests #倒入requests库

from lxml import etree #倒入lxml 库(没有这个库,pip install lxml安装)

importosimportsys

path=os.path.abspath(os.path.dirname(sys.argv[0]))defcode():

wb= xlrd.open_workbook(path+'\\stock.xls')#打开Excel文件

data = wb.sheet_by_name('Sheet1')#通过excel表格名称(rank)获取工作表

b=data.col_values(0)#获取第一列数据(数组)

list=[]for c in b[1:]:#for循环,排除第一行数据

d=int(c)

s="%06d" % d#股票代码一共有6位,常规打印无法打印出首位带0的代码的0部分,补齐缺失的0

#print(s)

list.append(s)return(list)

code=code()print(code)

关键信息:

读取表格数据后,获取第一列数据(获取第一行数据的方法“b=data.raw_values(0)”

data = wb.sheet_by_name('Sheet1')#通过excel表格名称(rank)获取工作表

b=data.col_values(0)#获取第一列数据(数组)

不取第一行数据

for c in b[1:]:#for循环,排除第一行数据

读取数据格式化后,发现打印出来的数据000xxx代码不会显示000的内容

1464578-20200129220643764-307729665.png

所以直接强制定义每一次循环打印的数据都必须为6位,不足6位的数据左边0补位

d=int(c)

s="%06d" % d#股票代码一共有6位,常规打印无法打印出首位带0的代码的0部分,补齐缺失的0

1464578-20200129220705501-1815973846.png

参考:https://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值