Tambahkan metode format dalam berbagai format xlsxwriter
Dec 01 2020
Saya mencoba kode berikut dan berfungsi dengan baik. Tetapi saya bertanya-tanya apakah ada pendekatan singkat untuk menangani fitur add format yang ada di paket xlsxwriter. Berikut kode untuk klarifikasi lebih lanjut
import pandas as pd
import xlsxwriter
writer = pd.ExcelWriter('pandas_excel.xlsx', engine='xlsxwriter')
new_df.to_excel(writer, sheet_name='Sheet1')
workbook = writer.book
format_right_to_left = workbook.add_format()
format_right_to_left.set_reading_order(2)
myformat = workbook.add_format()
myformat.set_reading_order(2)
myformat.set_align('center')
myformat.set_align('vcenter')
worksheet = writer.sheets['Sheet1']
worksheet.right_to_left()
worksheet.set_column('B:G', 12, myformat)
worksheet.set_column('A:A', 16, myformat)
writer.save()
writer.close()
Dalam kode saya memiliki baris-baris menambahkan format
myformat = workbook.add_format()
myformat.set_reading_order(2)
myformat.set_align('center')
myformat.set_align('vcenter')
Pertanyaan saya bagaimana cara mempersingkat garis seperti itu agar lebih fleksibel dan dapat menambahkan lebih banyak format dengan cara yang mudah?
Jawaban
2 buran Dec 01 2020 at 09:22
Anda dapat meneruskan properti sebagai dikt add_format()
.
my_format = workbook.add_format({'reading_order':2, 'align':'center', 'valign':'vcenter'})
Anda dapat membaca lebih lanjut di sini
EDIT: contoh kerja penuh, dengan perbatasan
import pandas as pd
import xlsxwriter
data = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=data)
with pd.ExcelWriter('pandas_excel.xlsx', engine='xlsxwriter') as writer:
df.to_excel(writer, sheet_name='Sheet1')
workbook = writer.book
my_format = workbook.add_format({'reading_order':2, 'align':'center', 'valign':'vcenter', 'border':1})
worksheet = writer.sheets['Sheet1']
worksheet.set_column('B:G', 12, my_format)
worksheet.set_column('A:A', 16, my_format)
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Taylor Sheridan Baru Menambahkan 1 Bintang 'Yellowstone' Favoritnya ke Pemeran 'Lawmen: Bass Reeves'