我想创建一个通用格式函数,顶部、底部、右侧、左侧的默认值是多少

I want to create a genric format function, what is default value of top,bottom,right,left

def columnandcellformate(sheet_name,bold = 0,font_color = '#000000',bg_color = '#ffffff',align = '' ,bottom = 0 ,top = 3,right = 0,left = 0,font_size = 10 ,starcolumn = 0, endrow = 0 ):
    global sheet_format
    sheet_format=sheet_name.add_format({
                        'bottom':bottom,
                        'top' : top,
                        'bg_color':bg_color,
                        'font_color' : font_color,
                        'align':align,
                        'font_size':font_size,
                        'bold': bold,
                        'font_name':'Batang'
                       })

顶部、底部、右侧、左侧的默认值是多少,我的功能是使单元格顶部、底部、右侧和左侧为空白

我认为您的默认背景颜色可能导致单元格边框出现一些问题。我根据您是否希望函数调用这些条件添加了一些条件。这些条件使用格式方法,例如 format.set_bg_color()format.set_bottom() (see docs for more information on these)。如果您更改默认颜色,它们只会提供背景颜色。

import xlsxwriter

def columnandcellformate(bold = 0, font_color = '#000000', bg_color = 'none', align = '' , bottom = 999, top = 999, right = 999, left = 999, font_size = 10):
    global sheet_format
    sheet_format=workbook.add_format({
    'font_color' : font_color,
    'align': align,
    'font_size': font_size,
    'bold': bold,
    'font_name': 'Batang'
    })
    if bg_color != 'none':
        sheet_format.set_bg_color(bg_color)
    if bottom != 999:
        sheet_format.set_bottom(bottom)
    if top != 999:
        sheet_format.set_top(top)
    if right != 999:
        sheet_format.set_right(right)
    if left != 999:
        sheet_format.set_left(left)


workbook = xlsxwriter.Workbook('test.xlsx')
ws = workbook.add_worksheet('test_1')

columnandcellformate()
ws.write('B1', 'foo', sheet_format)
columnandcellformate(bold = 1, font_color = '#9C0006', bg_color = '#FFC7CE', align = '', bottom = 2, top = 1, right = 1, left = 1, font_size = 10)
ws.write('B3', 'bar', sheet_format)
workbook.close()

预期输出:

格式属性的默认值几乎都是 0/False。请参阅 initialization code 以获取格式对象。