Django视图:将从db检索到的unicode转换为字符串

时间:2015-06-17 15:36:24

标签: python django

在django视图中,我使用

从MySQL数据库中的表中检索数据
 diag_patient = Diagnosis.objects.get(patient=myid)
 diag_val = diag_patient.diagnosis_option 
 print "diagnosis value=", diag_val

当我打印diag_val时,我得到[u'One', u'Two'] 我想将其转换为等于One, Two的字符串。

你能帮我吗?

3 个答案:

答案 0 :(得分:1)

这不是关于Django的问题,而是关于Python中的列表和字符串。

看起来diag_val是列表,而不是unicode。您可以使用join连接字符串列表:

", ".join(diag_value)

答案 1 :(得分:0)

我们要做的是将列表diag_val转换为字符串,比如str_diag_val。 我们可以使用'join'方法完成此操作。

 diag_patient = Diagnosis.objects.get(patient=myid)
 diag_val = diag_patient.diagnosis_option
 str_diag_val = ", ".join(str(s) for s in diag_val) //to typecast the elements of the list into string
 print "diagnosis value=", str_diag_val

答案 2 :(得分:0)

我找到了解决方案。

 import ast
 str_diag_val =ast.literal_eval(diag_val)
 print "diag value=", str_diag_val[0], " ", str_diag_val[1]

这会将列表的字符串表示转换为列表。