在类中定义了__str__(self)方法,那么当使用print打印实例对象的时候,就会直接打印出在这个方法中return的数据.

案列:

 1 class Book:
2
3 def __init__(self, name, author, comment, state = 0):
4 self.name = name
5 self.author = author
6 self.comment = comment
7 self.state = state
8
9 def __str__(self): # 特殊函数__str__
10 if self.state == 0:
11 status = '未借出'
12 else:
13 status = '已借出'
14 return '名称:《%s》 作者:%s 推荐语:%s\n状态:%s ' % (self.name, self.author, self.comment, status)
15
16 book1 = Book('像自由一样美丽','林达','你要用光明来定义黑暗,用黑暗来定义光明')
17 # 传入参数,创建实例对象
18 print(book1)
19 # 直接打印对象即可,不能写成print(book1.__str__())

执行结果:

名称:《像自由一样美丽》,作者:林达,你要用光明来定义黑暗,用黑暗来定义光明

状态:未借出

Python中特殊函数__str__()的更多相关文章

  1. python中的__str__()函数

    __str__()函数的作用: 不知道大家再写程序是,打印一个实例化对象时,打印的其实时一个对象的地址.而通过__str__()函数就可以帮助我们打印对象中具体的属性值,或者你想得到的东西. 因为再p ...

  2. python中的__str__和__repr__方法

    如果要把一个类的实例变成 str,就需要实现特殊方法__str__(): class A(object): def __init__(self,name,age): self.name=name se ...

  3. Python中特殊函数和表达式lambda,filter,map,reduce

    1.lambda:使用lambda表达式可以定义一个匿名函数 lambda表达式是一种简洁格式的函数.该表达式不是正常的函数结构,而是属于表达式的类型 (1)基本格式: lambda 参数,参数... ...

  4. python 中的__str__ 和__repr__方法

    看下面的例子就明白了 class Test(object): def __init__(self, value='hello, world!'): self.data = value >> ...

  5. Python中特殊函数和表达式 filter,map,reduce,lambda

    1. filter 官方解释:filter(function or None, sequence) -> list, tuple, or string Return those items of ...

  6. Python中__repr__和__str__区别

    Python中__repr__和__str__区别 看下面的例子就明白了 class Test(object): def __init__(self, value='hello, world!'): ...

  7. python中魔法方法__init__,__str__,__del__的详细使用方法

    1. python中的魔法方法, 类似__init__, __str__等等,这些内置好的特定的方法进行特定的操作时会自动被调用 2. __init__的使用方法 class 类名(object):  ...

  8. python 中的 %s,%r,__str__,__repr__

    1.%s,%r的区别 在进行格式化输出时,%r 与 %s 的区别就好比 repr() 函数处理对象与 str() 函数处理对象的差别. %s ⇒ str(),比较智能: %r ⇒ repr(),处理较 ...

  9. Python中关于类和函数的初体验之"__init__"和"__str__"不是"_init_"和"_str_"

    刚刚接触Python,今天就是怎么也调试不过去了,上网上查直到晚上才查到一个有效信息,真是坑啊!原来Python中的这些“魔法”方法的命名里就有陷阱…… 上图中的那两个红圈圈,一定要记住哦,这些Pyt ...

随机推荐

  1. Redisson-关于使用订阅数问题

    一.前提 最近在使用分布式锁redisson时遇到一个线上问题:发现是subscriptionsPerConnection or subscriptionConnectionPoolSize 的大小不 ...

  2. promise初体验,小白也能看懂

    promise出现的目的一为处理JavaScript里的异步,再就是避免回调地狱. promise有三种状态:pending/reslove/reject . pending就是未决,resolve可 ...

  3. Android官方文档翻译 十五 3.3Supporting Different Platform Versions

    Supporting Different Platform Versions 支持不同的平台版本 This lesson teaches you to 这节课教给你 Specify Minimum a ...

  4. 马哈鱼血缘分析工具部署介绍--win 10

    马哈鱼血缘分析工具部署介绍--win 10 随着大数据技术的发展与普及,数据治理和数据质量变得越来越重要,数据血缘分析在业界悄然兴起并得到了广泛流行,马哈鱼是国内少有的一款专业且易用的血缘分析工具.本 ...

  5. 常用字符的ASCII码

    字母    ASCII码      十进制数 0         00110000      48 9           00111001        57 A          01000001 ...

  6. WebGPU图形编程(4):构建一个彩色的正方形<学习引自徐博士教程>

    本节我们来复原一个彩色的正方形,前提告知,本节的shaders和main的代码从结构上有调整,我会更加详细的描述每行的代码意思: 源代码下载地址:https://github.com/jack1232 ...

  7. 微信小程序入门教程之二:页面样式

    这个系列的上一篇教程,教大家写了一个最简单的 Hello world 微信小程序. 但是,那只是一个裸页面,并不好看.今天接着往下讲,如何为这个页面添加样式,使它看上去更美观,教大家写出实际可以使用的 ...

  8. 基于Centos7.X的CS:GO社区服搭建

    基于Centos7.X的CS:GO私人服务器搭建 由于比完了赛,在学校太过无聊,便想搭建一个CSGO社区服务器,方便舍友同学进来游玩,顺便帮助一些有想法的人,让他们少走一点弯路 一.创建新用户,并下载 ...

  9. 五种IO模型(Model)

    目录 一:IO模型简介 1.五种IO Model: 二:五种IO模型简介 1.阻塞IO 2.非阻塞IO 3.多路复用IO 4.信号驱动IO模型 5.异步IO 三:5种I/O模型的比较 一:IO模型简介 ...

  10. 获取nginx日志状态码百分比脚本

    #!/bin/bash pwd=/app/nginx/logs/access.log for num1 in `cat $pwd | awk '{print $9}' | grep -Ei " ...