#! @Time :
2019
/
3
/
20
22
:
00
#
!
Author :Frank Zhang
#
! @File :Pandas_ReadExcelV1.
0
.py
#
! Python Version
3.7
模块功能:读取当前文件夹下的Source里的Excel文件,显示其相关信息
说明:默认把Excel的第一行当做列名,数据的第1行是从Excel的第2行开始
这里获取的最大行是Excel的最大行减去作为列名的第1行
import pandas
as
pd
sExcelFile
=
"
./Source/Book1.xlsx
"
df
= pd.read_excel(sExcelFile,sheet_name=
'
Sheet1
'
)
#获取最大行,最大列
nrows
=df.shape[
0
]
ncols
=
df.columns.size
print(
"
=========================================================================
"
)
print(
'
Max Rows:
'
+
str(nrows))
print(
'
Max Columns
'
+
str(ncols))
#显示列名,以列表形式显示
print(df.columns)
#显示列名,并显示列名的序号
for
iCol
in
range(ncols):
print(str(iCol)
+
'
:
'
+
df.columns[iCol])
#列出特定行列,单元格的值
print(df.iloc[
0
,
0
])
print(df.iloc[
0
,
1
])
print(
"
=========================================================================
"
)
#查看某列内容
#sColumnName
=
'
fd1
'
print(df[sColumnName])
#查看第3列的内容,列的序号从0开始
sColumnName
=df.columns[
2
]
print(df[sColumnName])
#查看某行的内容
iRow
=
1
for
iCol
in
range(ncols):
print(df.iloc[iRow,iCol])
#遍历逐行逐列
for
iRow
in
range(nrows):
for
iCol
in
range(ncols):
print(df.iloc[iRow,iCol])
print(
'
=====================================End==================================
'
)
2、不把第1行作为列名,读取Excel那就没有列名,需增加参数:header=None
代码如下:
#! -*- coding utf-8 -*-
#! @Time :2019/3/20 9:44
#! Author :Frank Zhang
#! @File :Pandas_ReadExcelV1.1.py
#! Python Version 3.7
模块功能:读取当前文件夹下的Source里的Excel文件,显示其相关信息
说明:数据从第1行开始,不设列名,不把第1行作为列名
这里获取的最大行就是是Excel的最大行
import pandas as pd
sExcelFile="./Source/Book1.xlsx"
df = pd.read_excel(sExcelFile,sheet_name='Sheet1',header=None)
#获取最大行和最大列数
nrows=df.shape[0]
ncols=df.columns.size
print("=====================================================")
print('Max Rows: '+str(nrows))
print('Max Columns: '+str(ncols))
#显示某特定单元格的值
print(df.iloc[0,0])
print(df.iloc[0,1])
print("=====================================================")
#查看某行的内容
print("====================显示某一行=======================")
#iRow=1
print("请输入行号(1-"+str(nrows)+"):")
iRow=int(input())-1
for iCol in range(ncols):
print(df.iloc[iRow,iCol])
print("====================显示某一列=======================")
#iCol=1
print("请输入列号(1-"+str(ncols)+"):")
iCol=int(input())-1
if iCol>=0 and iCol<=ncols:
for iRow in range(nrows):
print(df.iloc[iRow,iCol])
else:
print('输入了错误的列号')
#遍历逐行逐列
print("\n逐行逐列显示:")
for iRow in range(nrows):
for iCol in range(ncols):
print(df.iloc[iRow,iCol])
print('=========================End=========================')
示例2增加了动态输入行号和列号,显示相应行列的内容。
这两个示例都是可以运行的。
转自:
https://www.cnblogs.com/SH170706/p/10568908.html
本文来自博客园,作者:
数据驱动
,转载请注明原文链接:
https://www.cnblogs.com/shun7man/p/14338267.html