首先在python程序目录下新建一个须要读取的txt文件(我这里的数据是一个简单的矩阵)命名为datapython
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20web
注意数据之间不要打逗号svg
import numpy as np np.loadtxt('data.txt') print(a)
输出结果:ui
[[ 1. 2. 3. 4. 5.]
[ 6. 7. 8. 9. 10.]
[11. 12. 13. 14. 15.]
[16. 17. 18. 19. 20.]]spa
import numpy as np a=np.loadtxt('data.txt',skiprows=1,dtype=int) print(a)
输出结果:3d
[[ 6 7 8 9 10]
[11 12 13 14 15]
[16 17 18 19 20]]code
这里的skiprows是指跳过第几行,dtype是将数据类型设置为整型。xml
import numpy as np a=np.loadtxt('data.txt',skiprows=1,usecols=(0,2),dtype=int) print(a)
输出结果:对象
[[ 6 8]
[11 13]
[16 18]]blog
usecols是指输出第几列,这里的usecols=(0,2)是指输出的第一列和第三列。
import numpy as np (a,b)=np.loadtxt('data.txt',skiprows=1,usecols=(0,2),dtype=int,unpack=True) print(a,b)
输出结果:
[ 6 11 16] [ 8 13 18]
unpack=True是指会把每一列当成一个向量输出, 而不是合并在一块儿.
import numpy as np a=1,2,3,4,5,6,7,8 np.savetxt('text.txt',a,fmt="%d",delimiter="\n")
输出结果:
text.txt指你要建立的txt文件名称、a表明你要存储的数据,fnt指你把数据存储为何类型,delimiter="\n"换行。
fnt的类型表示方法跟C语言类似,具体能够参见C语言,这里我把输出整型换成双精度浮点型,
import numpy as np a=1,2,3,4,5,6,7,8 np.savetxt('text.txt',a,fmt="%lf",delimiter="\n")
输出结果:
import numpy as np (a,b)=np.loadtxt('data.txt',skiprows=1,usecols=(0,2),dtype=int,unpack=True) print(a,b) np.savetxt('text.txt',a,fmt="%d",delimiter="\n")
意义:将data文件中的”部分“数据存储到text中。
输出结果:
(a,b)=[ 6 11 16] [ 8 13 18]
text文件内容为:
import xlsxwriter a=[1,2,3,4,5,6,7,8,9,10] workbook = xlsxwriter.Workbook('haha.xlsx') # 建立一个名为‘haha.xlsx’的工做表 worksheet = workbook.add_worksheet() # 建立一个工做表对象 for i in range(len(a)): worksheet.write(0,i,a[i]) workbook.close()
输出结果:
可是上面这个程序会出现一个问题,每执行一次程序原先的数据就会被更新,
再来看下面这个程序
from openpyxl import load_workbook import openpyxl a=[1,2,3,4,5,6,7,8,9,10] wb = load_workbook("haha.xlsx") worksheet = wb.active for i in range(len(a)): worksheet.cell(1,i+1,a[i]) wb.save("haha.xlsx")
如今就不会进行数据更新了。
import xlrd data=xlrd.open_workbook("haha.xlsx") table=data.sheets()[0] c=table.row_values(1) print(c)
输出结果:
[1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0]
读取出Excel中第2行的数据。
import xlrd data=xlrd.open_workbook("haha.xlsx") table=data.sheets()[0] nrows = table.nrows # 有效行数 ncols = table.ncols # 有效列数
table.col_slice(1, start_rowx=0, end_rowx=None) #返回由该列中全部的单元格对象组成的列表
第二列对象组成:[number:2.0, number:2.0]
table.col_values(1, start_rowx=0, end_rowx=None) #返回由该列中全部单元格的数据组成的列表
第二列数据组成:[2.0, 2.0]
table.row_values(rowx, start_colx=0, end_colx=None) #第二行中全部单元格的数据组成的列表
[1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0]
table.cell(1,2) #返回第二行第三列单元格对象
number:3.0
table.cell_value(1,1) #返回第二行第二列的数据
二行中全部单元格的数据组成的列表
[1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0] ```python table.cell(1,2) #返回第二行第三列单元格对象
number:3.0
table.cell_value(1,1) #返回第二行第二列的数据
2.0