擅长:python、mysql、java
<p>根据最初的问题和评论中的讨论,我怀疑您只是没有保存转换的结果。Python字符串是不可变的,因此仅对传递到函数中的字符串进行更改不会对原始字符串产生任何影响:</p>
<pre><code>In [42]: def change_string(s):
...: s = "hello world"
...:
...: test_s = "still here"
...: change_string(test_s)
...: print(test_s)
still here
</code></pre>
<p>相反,您需要在函数中返回转换结果并重新分配变量:</p>
<pre><code>In [43]: def change_string(s):
...: s = s.encode('latin1').decode('u8')
...: return s
...:
...: test_s = "\xc3\xa4\xc3\xa4abc"
...: test_s = change_string(test_s)
...: print(test_s)
ääabc
</code></pre>