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!!