由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - python simple question
相关主题
求教python问题,在线等 (转载)Python and C/C++ Question
Extrapolation in Python?受不了python了
[合集] 我也花了一小时读了一下pythona python question
现在哪些script最流行?请教一个python的概念问题
请教python里面function的arguments的格式问题Python 可不可以一次读数据给一个 web service 后,然后一直用这个数据
python smtp 587 连不上gmail, socket error?python 3 cookbook 作者的一篇蠢文
python比java慢这么多呀问个Python getter setter的问题
问个Python的问题小孩子学哪种编程语言比较好?
相关话题的讨论汇总
话题: __话题: john话题: str话题: def话题: self
进入Programming版参与讨论
1 (共1页)
g****a
发帖数: 1304
1
say I have a user-defined class
class records:
def __init__(self):
self.name = ''
self.gpa = 0.0
student = recards()
student.name = 'John'
student.gpa = 3.0
I want to 'print student' to be ['John',3.0]
what shoud be done? Thanks!
b*******s
发帖数: 5216
2
__str__

【在 g****a 的大作中提到】
: say I have a user-defined class
: class records:
: def __init__(self):
: self.name = ''
: self.gpa = 0.0
: student = recards()
: student.name = 'John'
: student.gpa = 3.0
: I want to 'print student' to be ['John',3.0]
: what shoud be done? Thanks!

g****a
发帖数: 1304
3
__str__好像要把3.0换成str(), 怎么输出float呢?
如果做
def __str__(self):
tmplist=[]
tmplist.append(self.name)
tmplist.append(self.gpa)
print tmplist
return tmplist
print tmplist是对的,输出是['John',3.0]
但是直接 print student就不行。。。。
我才开始看python, 可能我理解的不对,老大能就我那个class具体给个__str__么?

【在 b*******s 的大作中提到】
: __str__
b*******s
发帖数: 5216
4
def __str__(self):
print self.name + str(self.gpa)

【在 g****a 的大作中提到】
: say I have a user-defined class
: class records:
: def __init__(self):
: self.name = ''
: self.gpa = 0.0
: student = recards()
: student.name = 'John'
: student.gpa = 3.0
: I want to 'print student' to be ['John',3.0]
: what shoud be done? Thanks!

g****a
发帖数: 1304
5
问题是不想变GPA为STR。。。最后输出是exactly ['John',3.0]....

【在 b*******s 的大作中提到】
: def __str__(self):
: print self.name + str(self.gpa)

L***s
发帖数: 1148
6
def __str__(self):
return "['%s',%.1f]" % (self.name, self.gpa)
跟C语言的printf格式化基本一样
当然用str.format也行
比Ruby的string interpolation难看一些

【在 g****a 的大作中提到】
: __str__好像要把3.0换成str(), 怎么输出float呢?
: 如果做
: def __str__(self):
: tmplist=[]
: tmplist.append(self.name)
: tmplist.append(self.gpa)
: print tmplist
: return tmplist
: print tmplist是对的,输出是['John',3.0]
: 但是直接 print student就不行。。。。

b*******s
发帖数: 5216
7
#!/usr/bin/env python
class record:
def __init__(self):
self.name = ''
self.gpa = 0.0
def __str__(self):
return '["' + self.name + '",' + str(self.gpa) + "]"
if __name__ == '__main__':
rec = record()
rec.name = "John"
rec.gpa = 3.3
print rec

【在 L***s 的大作中提到】
: def __str__(self):
: return "['%s',%.1f]" % (self.name, self.gpa)
: 跟C语言的printf格式化基本一样
: 当然用str.format也行
: 比Ruby的string interpolation难看一些

1 (共1页)
进入Programming版参与讨论
相关主题
小孩子学哪种编程语言比较好?请教python里面function的arguments的格式问题
python programming questionpython smtp 587 连不上gmail, socket error?
parsing file in node: js or python ?python比java慢这么多呀
Python中有没有类似PHP中 print_r的function?问个Python的问题
求教python问题,在线等 (转载)Python and C/C++ Question
Extrapolation in Python?受不了python了
[合集] 我也花了一小时读了一下pythona python question
现在哪些script最流行?请教一个python的概念问题
相关话题的讨论汇总
话题: __话题: john话题: str话题: def话题: self