我正在寫一些簡單的腳本來將文本翻譯成rot13。所以appriopriate類中我有這樣的:Google App Engine和string.translate不起作用
def post(self):
dict = string.maketrans("ABCDEFGHIJKLMabcdefghijklmNOPQRSTUVWXYZnopqrstuvwxyz", "NOPQRSTUVWXYZnopqrstuvwxyzABCDEFGHIJKLMabcdefghijklm")
code = self.request.get("text")
code = string.translate(code, dict)
它得到的參數「文本」不錯,但在.translate它吹了內部服務器錯誤:
File "<mypath>\main.py", line 46, in post
code = string.translate(code, dict)
File "C:\Python27\lib\string.py", line 498, in translate
return s.translate(table + s[:0])
UnicodeDecodeError: 'ascii' codec can't decode byte 0x80 in position 128: ordinal not in range(128)
這有什麼錯我的代碼?
這純粹是一個Python的問題 - 沒有任何使用App Engine。另外,'dict'對於一個變量來說是一個非常糟糕的名字,因爲它也是一個內置類型的名稱。 –
很高興知道,謝謝:) – Straightfw