前言
之前我们已经学过了Python读取和写入txt,csv文件数据的操作,今天我们学习一下如何利用Python读取和写入Excel文件数据的操作。
一:Python读取Excel文件数据。
(1)创建Excel数据文件,创建好文件记得要关闭文件,不然读取不了文件内容.
(2)打开PyCharm,,创建python file ,写入以下代码
#读取xls文件,一定要把xlsx后缀改成xls import xlrd file_name = xlrd.open_workbook(\'G:\\info.xls\')#得到文件 table =file_name.sheets()[0]#得到sheet页 nrows = table.nrows #总行数 ncols = table.ncols #总列数 i = 0 while i < nrows: cell = table.row_values(i)[1] #得到数字列数据 ctype = table.cell(i, 1).ctype #得到数字列数据的格式 username=table.row_values(i)[0] if ctype == 2 and cell % 1 == 0: #判断是否是纯数字 password= int(cell) #是纯数字就转化位int类型 print(\'用户名:%s\'%username,\'密码:%s\'%password) i=i+1
(3)运行后的结果如下
二:Python写入Excel文件数据。
(1)打开PyCharm,,创建python file ,写入以下代码
import random import string import csv import xlrd import xlwt #注意这里的 excel 文件的后缀是 xls 如果是 xlsx 打开是会提示无效,新建excel表格后要选择文本格式保存 all_str = string.ascii_letters + string.digits excelpath =(\'G:\\user.xls\') #新建excel文件 workbook = xlwt.Workbook(encoding=\'utf-8\') #写入excel文件 sheet = workbook.add_sheet(\'Sheet1\',cell_overwrite_ok=True) #新增一个sheet工作表 headlist=[u\'账号\',u\'密码\',u\'邮箱\'] #写入数据头 row=0 col=0 for head in headlist: sheet.write(row,col,head) col=col+1 for i in range(1,4):#写入3行数据 for j in range(1,3):#写入3列数据 username = \'\'.join(random.sample(all_str, 5))+\'#$%\' # password = random.randint(100000, 999999) 生成随机数 password= \'\'.join(random.sample([\'0\', \'1\', \'2\', \'3\', \'4\', \'5\', \'6\', \'7\', \'8\', \'9\', \'z\', \'y\', \'x\', \'w)\', \'v\', \'u\', \'t\', \'s\', \'r\', \'q\', \'p\', \'o\', \'n\', \'m\', \'l\', \'k\', \'j\', \'i\', \'h\', \'g\', \'f\', \'e\', \'d\', \'c\', \'b\', \'a\'],8)) Email=\'\'.join(random.sample(all_str, 5))+\'@163.com\' sheet.write(i,j-1,username) sheet.write(i,j,password) sheet.write(i,j,Email) # sheet.write(i-1, j-1, username) 没有写标题时数据从第一行开始写入 # sheet.write(i-1, j, password) workbook.save(excelpath) #保存 print(u"生成第[%d]个账号"%(i))
(2)运行后的结果如下
生成Excel文件
以上就是利用Python代码读取和写入Excel文件数据的操作,小伙们学会了吗?