如何在Python中显示对象属性

2024-06-09 16:19:51 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的项目中,我必须使用不同语言的用户构建服务器和客户端,将thrift集成到项目中。所以我决定用python构建客户机。但是我对python知之甚少:(

那么有人能帮我解决这个简单的问题吗

假设我有一个具有这些属性的类:

struct Exam {
    1:i64 examId,
    2:string student,
    3:i64 graded
}

在我的服务器大小中,我实现了返回列表的代码。那么,如何在客户端(python)中从每次考试中读取学生的姓名呢。在

我试过了:

^{pr2}$

Tags: 项目用户服务器语言客户端客户机string属性
3条回答

您的问题只是迭代mylist时打印的内容。python中的For循环的工作方式与java和其他语言中的foreach循环类似:i依次获取mylist中每个iterable的值。mylist只是一个检查列表(例如think array list)。在

所以你想要:

for i in mylist:
   print "student: %s" % i.student

或者,在python 3友好代码中:

^{pr2}$

尝试使用vars(),它将对象的属性作为字典:

vars([object]) -> dictionary

Without arguments, equivalent to locals().
With an argument, equivalent to object.__dict__.

示例:

>>> class MyObj(object):
...    pass
>>> obj = MyObj()
>>> vars(obj)
{}
>>> obj.a = 1
>>> vars(obj)
{'a': 1}

根据我在这里看到的,错误在第二个print。尝试使用:

print("student: %s") i

或者

^{pr2}$

两者都能正常工作。在

相关问题 更多 >