一、Python字典基礎
Python字典是一種無序的鍵值對集合。一個字典用花括弧 {} 表示,其中每個鍵值對用冒號 : 分隔,每個鍵和其對應值用逗號隔開。例如:
d = {'apple': 1, 'banana': 2, 'orange': 3}
這裡的 d 就是一個字典,其中有三個鍵值對,分別是 ‘apple’: 1, ‘banana’: 2, ‘orange’: 3。我們可以通過鍵來獲取對應的值,比如:
print(d['apple']) # 輸出 1
還可以動態地往字典中添加鍵值對:
d['pear'] = 4
print(d) # 輸出 {'apple': 1, 'banana': 2, 'orange': 3, 'pear': 4}
除此之外,Python字典還支持其他常見操作,比如遍歷、刪除、更新等。
二、Python從文件中讀取字典
在實際的開發中,我們通常需要從文件中讀取字典,以便進行後續的操作。Python提供了多種讀取文件的方式,對於小型字典,我們可以使用 json 模塊實現文件讀寫,例如:
import json
# 寫入字典到文件
d = {'apple': 1, 'banana': 2, 'orange': 3}
with open('fruits.json', 'w') as f:
json.dump(d, f)
# 從文件中讀取字典
with open('fruits.json', 'r') as f:
d = json.load(f)
print(d) # 輸出 {'apple': 1, 'banana': 2, 'orange': 3}
上述代碼中,我們使用了 with .. as .. 語法來打開文件,這樣可以在文件使用完成後自動關閉文件句柄,避免文件泄漏。然後使用 json.dump() 函數把字典 d 寫入到文件 ‘fruits.json’ 中,而 json.load() 函數則從該文件中讀取字典。
三、Python處理大型字典
當字典變得足夠大時,我們需要使用適當的技術來處理它。一個簡單但非常有效的方法是使用迭代器,這樣一次只會載入一個鍵值對到內存中,從而避免內存溢出。
import csv
# 從CSV文件中讀取字典
with open('stocks.csv', 'r', newline='') as f:
reader = csv.DictReader(f)
for row in reader:
print(row['Symbol'], row['Price'])
上述代碼中,我們使用 Python 標準庫中的 csv 模塊來讀取 CSV 文件,其中 DictReader 類會將每行數據讀取為一個字典。我們可以使用迭代器 (for row in reader: ..) 來一次處理一行數據,從而處理大型數據。
四、Python使用pandas處理大型字典
如果需要處理更大的數據集,可以使用 pandas 庫。pandas 是Python中用於數據處理和分析的強大工具,可以輕鬆處理包含數百萬行和數百列的大型數據集。
下面是一個使用 pandas 讀取 CSV 文件並對其進行簡單處理的例子:
import pandas as pd
# 從CSV文件中讀取數據並進行簡單處理
df = pd.read_csv('stocks.csv')
df['Total'] = df['Price'] * df['Volume']
df.to_csv('stocks_with_total.csv', index=None)
print(df.head())
上述代碼中,我們使用了 Pandas 的 read_csv() 函數讀取一個 CSV 文件,並將其轉換為 DataFrame 類型。接著,我們添加了一個新的 Total 列,計算每個股票的市值,並將結果輸出到新的 CSV 文件中。最後,我們列印了前五行數據。
五、小結
本文介紹了 Python 字典的基礎知識,以及如何使用各種方法讀取和處理大型字典。這些技巧可以幫助你輕鬆地處理和管理大量數據,提高數據處理的效率。
原創文章,作者:OKQY,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/135647.html