feat: string manipulation

This commit is contained in:
2026-08-23 18:16:48 +02:00
parent 85e0f16f7d
commit 94b44dbd37

View File

@@ -1,7 +1,65 @@
def t_strings():
from string import Formatter
def template_strings():
my_template = "This is a value: {test}"
print(my_template.format(test="another"))
complext_template = "The number of days in a %s is %d"
# % is the string formatting operator
print(complext_template % ("year", 365))
print("Numbers can also be formatted, such as %.2f" % 123.1235)
print("Simple template values can also be indexed {0} {1} but CANT use the formatting operator '%'".format("first", "second"))
print("What can do is specify both a template value name and a format, such as {test:.2f}".format(test=123.12345))
name = "Me"
surname = "Another dude"
print(f"I'm {name} {surname}")
# Lower level access to format flows
test_template = "This is an example with {with_quotes!r} or a number {num:.2f}"
for text, field, format_spec, conversion in Formatter().parse(test_template):
print(f"{text=}, {field=}, {format_spec=}, {conversion=}")
# Allow input in templates
# print(t"Hello, {input("Enter your name: ")} 👋 Welcome back!")
def split_strings():
example_string = "This is a long string with a number 2134"
print(f"> Example string: {example_string}")
first_four = example_string[:4]
print(f"> First four: {first_four}")
last_four = example_string[-4:]
print(f"> Last four: {last_four}")
without_first_four = example_string[4:]
print(f"> Without first four: {without_first_four}")
without_last_four = example_string[:-4]
print(f"> Without last four: {without_last_four}")
with_replaced_l = example_string.replace("l", "p")
print(f"> With replaced l: {with_replaced_l}")
# Must use ascii chars
with_multiple_removed = example_string.translate({97: None, 101: None, 105: None, 111: None, 117: None})
print(f"> Without vocals: {with_multiple_removed}")
a_to_o = str.maketrans("a", "o")
with_o_instead_of_a = example_string.translate(a_to_o)
print(f"> With o instead of a: {with_o_instead_of_a}")
no_a = str.maketrans("", "", "a")
without_a = example_string.translate(no_a)
print(f"> Without a: {without_a}")
def run():
t_strings()
template_strings()
split_strings()