I want to change a string in a list (letter) with the .replace method. Unfortunatly it also replaces the string in another list (starting_letter) and I can't find out why.
starting_letter should not be changed
letter should have the name ("Paul") in the first list item instead of [name].
Code:
name = "Paul"
starting_letter = ["Hello [name]", "bla bla", "bla bla"]
letter = starting_letter
print(f"{starting_letter} starting_letter before .replace")
letter[0] = letter[0].replace("[name]", name)
print(f"{starting_letter} starting_letter after .replace")
print(f"{letter} letter")
Output:
['Hello [name]', 'bla bla', 'bla bla'] starting_letter before .replace
['Hello Paul', 'bla bla', 'bla bla'] starting_letter after .replace
['Hello Paul', 'bla bla', 'bla bla'] letter