Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menulis Data ke Hamparan Excel Menggunakan Python: Openpyxl vs. Panda?

Bagaimana untuk Menulis Data ke Hamparan Excel Menggunakan Python: Openpyxl vs. Panda?

Mary-Kate Olsen
Lepaskan: 2024-11-28 00:38:17
asal
874 orang telah melayarinya

Cara Menulis Data ke Hamparan Excel dengan Python

Ramai pembangun menghadapi keperluan untuk mengeksport data daripada program mereka ke hamparan Excel. Panduan ini akan meneroka kaedah dan pakej berbeza yang tersedia dalam Python untuk melaksanakan tugas ini.

Memilih Pendekatan

Apabila memilih pendekatan, pertimbangkan keperluan khusus projek anda. Faktor yang perlu diingat termasuk ketersediaan Office pada komputer sasaran dan panjang serta struktur data anda.

Menggunakan Openpyxl

Openpyxl ialah pakej Python yang popular untuk membaca dan menulis ke hamparan Excel. Ia menawarkan fleksibiliti dan kawalan mendalam ke atas pemformatan dan penggayaan sel. Walau bagaimanapun, perlu diingat bahawa Openpyxl memerlukan Office dipasang pada sistem sasaran, yang mungkin tidak selalu dapat dilaksanakan.

Menggunakan Panda

Untuk kes di mana anda tidak memasang Office atau anda data adalah kompleks, Pandas muncul sebagai pilihan yang sangat baik. Panda membolehkan anda memanipulasi dan mewakili data dalam struktur data serba boleh. Dengan menukar data anda kepada DataFrame dan menggunakan kaedah to_excel, anda boleh menyimpannya dengan mudah ke fail Excel.

Contoh Kes Penggunaan

Pertimbangkan senario di mana anda mempunyai dua senarai nilai dan tiga pembolehubah rentetan. Anda perlu mencipta fail Excel dengan susun atur tertentu, seperti yang digambarkan dalam imej di bawah:

How to Write Data to Excel Spreadsheets Using Python: Openpyxl vs. Pandas?

Menggunakan Openpyxl, anda boleh mencipta reka letak ini seperti berikut:

import openpyxl

data = {
    "Display": [1, 2, 3],
    "Dominance": [2.34, 4.346, 4.234],
    "Test": [2.3, 3.2, 1.7]
}

workbook = openpyxl.Workbook()
sheet = workbook.active

# Set column widths
sheet.column_dimensions["A"].width = 10
sheet.column_dimensions["B"].width = 15

# Insert headings
sheet["A1"] = "Category"
sheet["B1"] = "Values"

# Iterate over keys and values
for key, values in data.items():
    sheet[f"A{sheet.max_row + 1}"] = key
    for i, value in enumerate(values, 2):
        sheet[f"B{sheet.max_row + i}"] = value

workbook.save("output.xlsx")
Salin selepas log masuk

Sebagai alternatif, menggunakan Panda:

import pandas as pd

data = {
    "display": [1, 2, 3],
    "dominance": [2.34, 4.346, 4.234],
    "test": [2.3, 3.2, 1.7]
}

df = pd.DataFrame(data)
df.to_excel("output.xlsx", index=False)
Salin selepas log masuk

Memformat Sel

Untuk memformat sel tertentu sebagai saintifik atau nombor dengan ketepatan, anda boleh menggunakan kaedah gaya dalam Panda:

df['dominance'] = df['dominance'].apply(lambda x: "%.10f" % x)
df.to_excel("output.xlsx", index=False)
Salin selepas log masuk

Ini akan mengekalkan ketepatan penuh nilai anda sambil memformatkannya sebagai saintifik tatatanda.

Atas ialah kandungan terperinci Bagaimana untuk Menulis Data ke Hamparan Excel Menggunakan Python: Openpyxl vs. Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan