Python數據分析之Excel和Text文件的讀寫操作方法
1.Excel和 Text 文件的讀寫操作

1. Text 文件讀寫包
import sys
print(sys.argv[0])
print(__file__)
print(sys.path[0])
q=open(sys.path[0] + "\out.txt","w",encoding='utf-8')
q.write('這個是測試一下')
q.close()
print('done')
open 語句可以打開的創(chuàng)建text 文件,存在文件即打開,不存在即創(chuàng)建
注:如文件已存在,使用 open 語句會覆蓋原文件生成新文件
1.1 open函數
函數語法:open(name[, mode[, buffering]])
- name : 一個包含了你要訪問的文件名稱的字符串值。
- mode : mode 決定了打開文件的模式:只讀,寫入,追加等。所有可取值見如下的完全列表。這個參數是非強制的,默認文件訪問模式為只讀®。
- buffering : 如果 buffering 的值被設為 0,就不會有寄存。如果 buffering 的值取 1,訪問文件時會寄存行。如果將 buffering 的值設為大于 1 的整數,表明了這就是的寄存區(qū)的緩沖大小。如果取負值,寄存區(qū)的緩沖大小則為系統(tǒng)默認。
例:執(zhí)行循環(huán)生成文本文件
import os
import sys
print(sys.argv[0])
print(__file__)
print(sys.path[0])
fq=open(sys.path[0] + "\out1.txt","w",encoding='utf-8')
for i in range(1,1000):
fq.write('哈哈'+ str(i)+'\n')
fq.close
print('done')
2. excel 讀寫
兩個主要的包:openpyxl 和 xlsxwriter
# coding=utf-8
import openpyxl
from openpyxl.reader.excel import load_workbook
import sys
import os
dir=sys.path[0] + '\練習題'
fq=open('out.txt','w',encoding='utf-8') # 打開文件,寫權限
for wjm in os.listdir(dir):
os.chdir(dir)
wk=load_workbook(filename=wjm)
gzb= wk.sheetnames
for x in range(len(gzb)):
sheet1=wk[gzb[x]]
print(wjm+' '+sheet1.title)
for i in range(1,sheet1.max_row+1):
chuan=''
for j in range(1,sheet1.max_column+1):
chuan='%s%s%s' % (chuan, ',', sheet1.cell(row=i,column=j).value)
chuan=chuan[1:]#獲得從第二個字符串開始到末尾的字符串
fq.write(chuan+'\r\n')
fq.close
print('it is over')
2.1 openpyxl包
OpenPyXL是一個強大的Python庫,用于處理Excel文件,允許讀取、編輯和創(chuàng)建Excel工作簿和工作表。無論是需要自動化處理大量數據,還是創(chuàng)建漂亮的報告,OpenPyXL都是一個強大的工具。本文將詳細介紹OpenPyXL的各種功能,包括讀取、寫入、樣式設置等,以及大量示例代碼來幫助你深入理解。
要開始使用OpenPyXL,首先需要安裝它。
使用pip進行安裝:
pip install openpyxl
安裝完成后,就可以導入OpenPyXL并開始處理Excel文件了。
1.打開現(xiàn)有工作表
import openpyxl
# 打開工作簿
workbook = openpyxl.load_workbook('example.xlsx')
# 獲取工作表
sheet = workbook['Sheet1']
# 讀取單元格數據
cell_value = sheet['A1'].value
print(cell_value)2.創(chuàng)建新的工作表
import openpyxl
# 創(chuàng)建新工作簿
workbook = openpyxl.Workbook()
# 獲取默認工作表
sheet = workbook.active
# 寫入數據到單元格
sheet['A1'] = 'Hello'
sheet['B1'] = 'World'
# 保存工作簿
workbook.save('new_example.xlsx')3.讀取數據
import openpyxl
workbook = openpyxl.load_workbook('example.xlsx')
sheet = workbook['Sheet1']
# 讀取單元格數據
cell_value = sheet['A1'].value
print(cell_value)
# 通過行和列索引讀取數據
cell_value = sheet.cell(row=2, column=3).value
print(cell_value)4.寫入數據
import openpyxl
workbook = openpyxl.Workbook()
sheet = workbook.active
# 寫入數據到單元格
sheet['A1'] = 'Hello'
sheet.cell(row=2, column=2, value='World')
# 保存工作簿
workbook.save('new_example.xlsx')2.2 xlsxwriter包
XlsxWriter 是一個 Python 模塊,用于創(chuàng)建使用開放 XML 標準的 Excel 2007 (XLSX) 格式的電子表格文件。
XlsxWriter 的一些重要特性包括 −
- XlsxWriter 創(chuàng)建的文件與 Excel XLSX 文件 100% 兼容。
- XlsxWriter 提供完整的格式設置功能,例如合并單元格、定義的名稱、條件格式設置等。
- XlsxWriter 允許以編程方式在 XLSX 文件中插入圖表。
- 可以使用 XlsxWriter 設置自動過濾器。
- XlsxWriter 支持數據驗證和下拉列表。
- 使用 XlsxWriter,可以插入 PNG/JPEG/GIF/BMP/WMF/EMF 圖像。
- 借助 XlsxWriter,Excel 電子表格可以與 Pandas 庫集成。
- XlsxWriter 還支持添加宏。
- XlsxWriter 具有用于寫入大文件的內存優(yōu)化模式。
安裝:
pip3 install xlsxwriter
1.多種寫入方式
import xlsxwriter
wk = xlsxwriter.Workbook('demo.xlsx')
sheet = wk.add_worksheet('sheet123')
sheet.write_string(1,1,"python test")#寫入字符串類型數據
sheet.write_number(1,2,12)#寫入數字型數據
sheet.write_blank(1,3," ")#寫入空類型數據
sheet.write_formula(1,4,"=c2*10")#寫入公式型數據
sheet.write_boolean(1,5,True)#寫入邏輯型數據
sheet.write_url(1,6,"http://www.sina.com.cn")#寫入超鏈接型數據
property = {
'font_size': 20,#字體大小
'bold':True, #是否加粗
'align': 'left',#水平對齊方式
'valign': 'vcenter',#垂直對齊方式
'font_name': u'微軟雅黑',
'text_wrap': False, # 是否自動換行
}
cell_format = wk.add_format(property)
sheet.write(2,2,"people",cell_format)
wk.close()
print('done')
2.插入圖片
import xlsxwriter
wk = xlsxwriter.Workbook('demo.xlsx')
sheet = wk.add_worksheet('sheet123')
# 圖片格式
img_format={
'x_offset': 8,#水平偏移
'y_offset': 14,#垂直偏移
'x_scale': 0.018,#水平縮放
'y_scale': 0.018,#垂直縮放
'url': None,
'tip': None,
'image_data': None,
'positioning': None
}
# 示例:
sheet.insert_image(1,1,'1.jpg',img_format)
wk.close()
print('done')總結
到此這篇關于Python數據分析之Excel和Text文件的讀寫操作方法的文章就介紹到這了,更多相關Python讀寫Excel和Text文件內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python實現(xiàn)將數據框數據寫入mongodb及mysql數據庫的方法
這篇文章主要介紹了Python實現(xiàn)將數據框數據寫入mongodb及mysql數據庫的方法,結合具體實例形式分析了Python針對mongodb及mysql數據庫的連接、寫入等操作實現(xiàn)技巧,需要的朋友可以參考下2018-04-04
python Tkinter實時顯示數據功能實現(xiàn)
這篇文章主要介紹了python Tkinter實時顯示數據功能實現(xiàn),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07
Python+eval函數實現(xiàn)動態(tài)地計算數學表達式詳解
Python的 eval() 允許從基于字符串或基于編譯代碼的輸入中計算任意Python表達式。當從字符串或編譯后的代碼對象的任何輸入中動態(tài)計算Python表達式時,此函數非常方便。本文將利用eval實現(xiàn)動態(tài)地計算數學表達式,需要的可以參考一下2022-09-09
python安裝包出現(xiàn)SSL證書驗證失敗?的問題及解決方式
安裝modelscope時SSL證書驗證失敗,原因為代理設置干擾了連接,關閉代理后成功安裝,說明代理可能影響SSL握手,建議排查代理配置,優(yōu)先嘗試關閉代理解決此類問題2025-08-08
pyodps中的apply用法及groupby取分組排序第一條數據
這篇文章主要介紹了pyodps中的apply用法及groupby取分組排序第一條數據,問綻放圍繞主題展開詳細的內容介紹,具有一定的參考價值需要的小伙伴可以參考一下2022-05-05

