ich habe gerade die f-strings für mich entdeckt und spiele nun etwas damit rum:
Code: Alles auswählen
def heading(text, level=1):
levels = {1: "#", 2: "*", 3: "=", 4: "-", 5: "^", 6: '"'}
return f"{text}\n{len(text) * levels[level]}"
def bullet_list(items, enumerated=False, starting_number=1):
bullet_list = ""
if enumerated is False:
for item in items:
bullet_item = f"- {item}\n"
bullet_list += bullet_item
return bullet_list
elif enumerated is True:
for (n, item) in enumerate(items):
bullet_item = f"{n + starting_number}. {item}\n"
bullet_list += bullet_item
return bullet_list
if __name__ == '__main__':
import random
import textwrap
n_of_entries = random.randint(3, 8)
entries = [random.randint(10000, 90000) for entry in range(n_of_entries)]
rst_text = textwrap.dedent(
f"""{heading("Example of Randomly Generated Bullet Lists")}
{heading("Normal Bullet List", level=2)}
This is a normal bullet list:
{bullet_list(entries)}
{heading("Enumerated Bullet List", level=2)}
And this is a enumerated bullet list:
{bullet_list(entries, enumerated=True)}"""
)
print(rst_text)
Code: Alles auswählen
Example of Randomly Generated Bullet Lists
##########################################
Normal Bullet List
******************
This is a normal bullet list:
- 50289
- 76920
- 25057
- 70780
- 32732
Enuemrated Bullet List
**********************
And this is a enumerated bullet list:
1. 50289
2. 76920
3. 25057
4. 70780
5. 32732