Я пытаюсь запустить кусок кода на python, где мне нужно прочитать файл filename.txt, который содержит код формата Json. Но у меня есть некоторые значения Юникода в значениях JSON. Файл очень большой, но я нашел один Unicode в файле как ֠
this
символ, чей юникод для Python u"\u05A0"
Вы можете обратиться по этой ссылке для получения дополнительной информации о Unicode
Unicode символ 'еврейский акцент TELISHA GEDOLA' (U + 05A0)
мой код Python выглядит как
import MySQLdb
import json
db = MySQLdb.connect(host="10.233.188.84", # your host, usually localhost
user="root", # your username
passwd="freebird@123", # your password
db="Practice_For_Json",) # name of the data base
#cursor = db.cursor()
json_file = open('asda.txt', 'r' )
file_data = json.load(json_file)
print(file_data)
print(type(file_data))
datas = file_data['datads']
print(datas)
for data in datas:
ex_statement = "Insert into `tablename` values {first_col '"+str(data['first_col'])+"'}, {second_col '"+str(data['second_col'])+"'});"
# cursor.execute(ex_statement)
db.close()
Мой Json похож:
{"datads" :[{
"first_col" : "SoomeVAlue_1",
"second_col" : "SomeValue_1_1"
},
{
"first_col" : " Unicode_Start ֠ Unicode_End",
"second_col" : "SomeValue_2_2"
}]}
вывод вышеуказанного кода:
{u'datads': [{u'first_col': u'SoomeVAlue_1', u'second_col': u'SomeValue_1_1'}, {u'first_col': u' Unicode_Start \u05a0 Unicode_End', u'second_col': u'SomeValue_2_2'}]}
<type 'dict'>
[{u'first_col': u'SoomeVAlue_1', u'second_col': u'SomeValue_1_1'}, {u'first_col': u' Unicode_Start \u05a0 Unicode_End', u'second_col': u'SomeValue_2_2'}]
Traceback (most recent call last):
File "abc.py", line 21, in <module>
ex_statement = "Insert into `tablename` values {first_col '"+str(data['first_col'])+"'}, {second_col '"+str(data['second_col'])+"'});"
UnicodeEncodeError: 'ascii' codec can't encode character u'\u05a0' in position 15: ordinal not in range(128)
когда я запускаю этот код, я получаю ошибку в качестве заголовка.
Я использую Python 2.7 в оболочке SSH.
Пожалуйста, помогите мне с этим.