iT邦幫忙

2024 iThome 鐵人賽

DAY 19
0
Python

探索 Python 世界:從語法基礎到圖像魔法系列 第 19

探索 Python 世界:從語法基礎到圖像魔法 Day19

  • 分享至 

  • xImage
  •  

csv、xlsx、pickle 檔案讀寫

CSV

CSV(Comma-Separated Values,又叫逗號分隔值)檔案的格式不存在通用標準,也沒有指定所使用的字元編碼,廣泛應用在程式之間轉移表格資料

利用Pandas讀寫.csv檔

import pandas as pd # 載入pandas套件,縮寫為pd
df = pd.read_csv('資料路徑')
print(df)

df.dropna() # 刪除包含NaN的行
df.T # 將 df 內容轉置
df.to_csv('new_df.csv') # 將 Pandas DataFrame 儲存為 CSV 檔

利用pd.read_cvs()讀入.csv檔,列印讀入內容,並利用df.dropna()刪除包含空值得行,並將 Pandas DataFrame 存為 csv

利用openpyxl讀寫xlsx

檢查是否已有 openpyxl 套件

pip show openpyxl # 檢查是否已安裝 openpyxl 套件

安裝 openpyxl 套件

pip install openpyxl # 安裝 openpyxl 套件

openpyxl 使用

workbook = openpyxl.load_workbook('資料路徑') #  載入 excel 文件

worksheet = ['工作表名稱'] # 選擇指定工作表

row7 = [cell.value for cell in worksheet[7]] # 將第7行資料存到row7
cell_811 = worksheet.cell(row=8, column=11).value # 將第8行第11欄的資料存到cell_811

print(row7) 
print(cell_811)

pickle讀寫

open('test.pkl', 'wb')'test.pkl'是欲打開的文件名稱,'wb'是欲打開的文件模式(w:表示寫模式,b:表示二禁制模式)

pickle.dump(data, file)將模組中的一個函數用序列化後的數據寫入到文件中,data是要序列的對象,file是以2進制寫模式打開的文件對象,序列化的數據將寫到這個文件中

Pickle.load(file)從文件file中讀取序列化的數據,並將其反序列化為原始的Python對象

import pickle

data = {'Name': 'Josh', 'age': 20, 'is_student': True} # 要序列化的字典

# 序列化字典並寫入 pickle 文件
with open('test.pkl', 'wb') as file:
    pickle.dump(data, file) 

# 從 pickle 文件讀取字典
with open('test.pkl', 'rb') as file:
    ex = pickle.load(file)

# 修改讀取後的數據
ex['age'] = 23
ex['is_student'] = False

print(ex)

參考資料:
https://ghost831105.medium.com/python%E5%AD%B8%E7%BF%92%E6%97%A5%E8%AA%8C-txt-csv-json-xlsx-pickle-%E5%85%B6%E5%AE%83%E4%BA%8C%E9%80%B2%E4%BD%8D%E6%AA%94%E6%A1%88%E7%9A%84%E8%AE%80%E5%AF%AB-2f6a75da3132


上一篇
探索 Python 世界:從語法基礎到圖像魔法 Day18
下一篇
探索 Python 世界:從語法基礎到圖像魔法 Day20
系列文
探索 Python 世界:從語法基礎到圖像魔法20
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言