如何使用Xlsxwriter分割特定字符串?

2024-09-27 19:26:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码:

    import xlsxwriter
    from functools import partial

    def x_in_y(word, inner):
        return inner in word

    workbook = xlsxwriter.Workbook('hello.xlsx')
    worksheet = workbook.add_worksheet()

    words = [
        ('pasport','passport'),
        ('limmit','limit'),
        ('putt','put')
    ]

    sentence =['putt dweqrerwr','dfsdf putt','limmit','pasport']

    row = 0

    for wrong,correct in words:
        filtered_names = filter(partial(x_in_y, inner=wrong), sentence)
        next_elem = next(filtered_names, None)

        if next_elem:
            worksheet.write(row,0, f"Typo: {wrong} 'should be {correct}'")
            worksheet.write(row+1,0,next_elem)

        for name in filtered_names:
            worksheet.write(row+2,0,name)
        row += 2
    workbook.close()

我希望结果是:

打字错误:pasport“应为passport”

pasport

输入错误:limmit“应该是限制”

limmit

打字错误:推杆“应该放”

推杆dweqrewrdfsdf

推杆

粗体表示红色

我希望粗体文本为红色

但如何做到这一点呢?我试过了worksheet.write_rich_string(),但是文本应该先切片

如何切片f“{错误}”


Tags: innames错误filteredwritenextrowworkbook

热门问题