千鋒教育Python零基礎(chǔ)全套視頻教程,7天Python極速入門(含python

xls和xlsx和csv有什么區(qū)別
1、文件格式不同。xls 是一個特有的三進制格式,其核心結(jié)構(gòu)是復(fù)合文檔類型的結(jié)構(gòu),面 xlsx 的核心結(jié)構(gòu)是 XML 類型的結(jié)構(gòu),來用的是基于XML 的壓縮方式,使其占用的空間更小。xlsx 中最后一個 x 的意義就在于此。
2、版本不同。xls是excel2003及以前版木生成的文件格式,而xlsx是excel2007及以后版木生成的文件格式
3、兼容性不同。xlsx恪式是向下兼容的,可兼容xls恪式。
4.csv是文本文件,用記事本就能打開。
操作:
#獲取xLs文件中的工作對象
wb = xlrd.open_workbook('./resources/阿里巴巴2020年股票數(shù)據(jù).xLs')
# print(wb)
# 獲取所有的工作表名稱
sheet_names =wb.sheet_names()
print(sheet_names)
# 選擇要讀取的具體的工作表對象
sheet = wb.sheet_by_name(sheet_names[0])
print(sheet)
#查看工作表的行和列數(shù)print(sheet.nrows,sheet.ncols)
#通過循環(huán)的方式獲取工作表中的每行和每列的數(shù)據(jù)
for row in range(sheet.nrows):
for col in range(sheet.ncols):
print(row,col)
# 通過ceLl對象中的value屬性獲取具體單元格中的數(shù)據(jù)
value = sheet.cell(row,col).value
# print(value)
# 將第一行以外的數(shù)據(jù)進行格式化處理
if row>0:
#將第一行以外的數(shù)據(jù)進行格式化處理
if row >0:
# 將第一列的數(shù)據(jù)轉(zhuǎn)換為年月日的形式
if col == 0:
value = xlrd.xldate_as_tuple(value ,0)print(value)
# print(value) # (2020,11,13,日,,0)
# :>2d 表示月份和日期保留2位數(shù) 01月08日
value = f{value[0]}年{value[1]:>02d}月{value[2]:>02d}日'
# print(value)
else:
# 將除了第一列的數(shù)據(jù)之外的數(shù)據(jù)格式保留2位小數(shù)
value = f'{value: .2f}
print(value,end='\t')
print()# 實現(xiàn)換行的效果