python文字列を成長表現に変換する関数evalの例


一つのホームページに登る時、保存するデータが全部encodeではないので、保存した中国語は全部unicodeになりました。
では、どうやって文字列を表すunicodeをunicodeに還元しますか?
関数eval(expression)はこの仕事を完成するのに役立ちます。
たとえば:

>>>> a = "u'\\u674e'"
>>> print a
u'\u674e'
>>> print eval(a)
 
関数の説明:
The expression argment is parsed and evaluated as a Python expression
つまりこの関数はexpressionをpython表現に再変換することができます。
添付の例は以下の通りです。

>>>> x = 1
>>> print eval('x+1')
2
補足知識:python基礎文字列はstr関数またはrepr関数で特殊文字コードを文字列に変換します。
エラーを避けるために、プログラム内で特殊な文字に出会う場合があります。str関数またはrepr関数を呼び出すことができます。非文字列を文字列として表します。
たとえば:
>>xxx=2012
>>print('hello'+'world'+xxx)
エラー

#     str   repr  
>>>xxx = 2012
>>>print('hello '+'world '+str(xxx))
>>>print('hello '+'world '+repr(xxx))
>>>hello world 2012
以上のpython文字列を成長表現に変換した関数evalの例は、小編集を皆さんに共有した内容の全てです。参考にしていただければ幸いです。どうぞよろしくお願いします。