pip 是一个安装和管理 Python 包的工具
下载地址:http://pypi.python.org/pypi/pip#downloads
安装步骤:
下载pip-9.0.1.tar.gz (md5, pgp)完成之后,解压到一个文件夹,用CMD控制台进入解压目录,输入:
python setup.py install
如果提示:
Traceback (most recent call last):
File "setup.py", line 6, in <module>
from setuptools import setup,
find_packages ImportError: No module named setuptools
说名缺少一个安装程序:setuptools
下载地址:https://pypi.python.org/pypi/setuptools
下载完成解压CMD到该目录下:执行
https://pypi.python.org/pypi/setuptools
然后继续安装pip即可
安装好之后,命令行输入pip,显示‘pip’不是内部命令,也不是可运行的程序。
因为我们还没有添加环境变量。
D:\Python27\Scripts (根据自己的python安装目录)
输入:pip
会出现帮助信息表示成功
我们之前用python可以对文件进行操作,现在我们来对excel操作。
我们需要使用一个第三方模块,xlrd
因为我们安装了pip,所以我们直接输入:
pip install xlrd
然后python会自动下载完成安装很方便。
关于Excel的读取:
import xlrd
data = xlrd.open_workbook('test.xls') # 打开xls文件
table = data.sheets()[0] # 打开第一张表
nrows = table.nrows # 获取表的行数
ncols = table.ncols # 获取表的列数
for x in range(nrows): # 循环逐行打印
for y in range(ncols):
cell=table.cell(x,y).value #获取单元格内容
print cell," "
if y==ncols-1:
print "\n"
print table.row_values(0) #获取第一行内容
print table.col_values(2) #获取第三列内容
创建Excel需要导入xlwt,所以需要在cmd下输入:pip install xlwt
创建Excel:
import xlwt
#创建workbook和sheet对象
file = xlwt.Workbook() #注意Workbook的开头W要大写
sheet1 = file.add_sheet('sheet1',cell_overwrite_ok=True)
#cell_overwrite_ok==True表示可以重复写入
#向sheet页中写入数据
sheet1.write(0,0,'1') #往第一行第一列插入
sheet1.write(0,1,'2') #往第一行第二列插入
file.save('test2.xls') #保存
print "finish"
使用xlrd读取文件,使用xlwt生成Excel文件(可以控制Excel中单元格的格式)。但是用xlrd读取excel是不能对其进行操作的;而xlwt生成excel文件是不能在已有的excel文件基础上进行修改的,如需要修改文件就要使用xluntils模块。
首先cmd下输入:pip install xlutils
import xlrd
import xlutils.copy
#打开一个workbook
rb = xlrd.open_workbook('test.xls')
wb = xlutils.copy.copy(rb) #复制
ws = wb.get_sheet(0) #获取第一个sheet
ws.write(1, 2, 99) #第二行第三列写入99
wb.save('test.xls')
目前需要注意的是这个第三方库,暂时不支持保存xlsx格式的Excel文件
经过一番查询,发现XlsxWriter更好更强大。
当然下载方式一样,输入:pip install XlsxWriter
import xlsxwriter
workbook = xlsxwriter.Workbook('test.xlsx')# 创建一个表
worksheet = workbook.add_worksheet()# 添加一个sheet
#需要写入的数据
mylist = (
['test1', 1000,0.1],
['test2', 2000,0.2],
['test3', 3000,0.3],
['test4', 5000,0.4],
)
row = 0
col = 0
# 将数据写入单元格
for item, nums,cost in (mylist):
worksheet.write(row, col,item)
worksheet.write(row, col + 1, nums)
worksheet.write(row, col + 2, cost)
row += 1
#加粗字体
bold = workbook.add_format({'bold': True})
# 写入单元格
worksheet.write(row, 0, 'Total',bold)
worksheet.write(row, 1, '=SUM(B1:B4)') # 使用excel方法求和并写入单元格
worksheet.write(row, 2, '=SUM(C1:C4)') #使用excel方法求和并写入单元格
workbook.close()