I want to create a XLSX file in python. For this, I use xlsxwriter.
In my XLSX I want to highlight some part of text with the write_rich_string method.
But, my string is not a fixed value. The part I want to highlight can be randomly placed into it. Or I can have multiples part of the text to highlight.
So, can I create a "list of parameters" for the call of write_rich_string? And what is the method to made this?
Example:
mystring = "I want this in [tag_1]yellow[/tag_1] and this in [tag_2]green[/tag_2]."
worksheet.write_rich_string('A1',
'I want this in',
yellow, 'yellow',
' and this is ',
green, 'green')
worksheet.write_rich_string('A1', my_list_of_parm)
If I understand what you're asking… you've got a list like this:
And you want to pass that to
write_rich_string
as a bunch of separate arguments (along with one normal argument).The way to do that is explained in the tutorial under Unpacking Argument Lists: Just put
*
beforemy_list_of_parm
, and it will be unpacked into separate arguments:In general, if you want to convert a list (or other iterable) into separate values or vice-versa,
*
is the answer:But for the exact rules on what you can and can't do, you'll need to read the docs.