In Python, strings are not very mutable which states that you cannot change their characters in-place. You can, however, do the following:-
for c in s1:
s2 += c
The reasons this works is that it's a shortcut for:
for c in s1:
s2 = s2 + c
The above creates a new string with each iteration, following which it stores the reference to that new string in s2. Options are always open and you can use something like:
>>> str1 = "mystring"
>>> list1 = list(str1)
>>> list1[5] = 'u'
>>> str1 = ''.join(list1)
>>> print(str1)
mystrung
>>> type(str1)
<type 'str'>
Hope this answers your question!!