python中类的输出或类的实例输出为<__main__类名 object at xxxx>这种形式的原因

yipeiwu_com6年前Python基础

原因: __str__()这个特殊方法将对象转换为字符串的结果

效果图:

代码: 

# 定义一个Person类
class Person(object):
  """人类"""
  def __init__(self, name , age):
    self.name = name
    self.age = age

p = Person(‘小黑‘,18)
print(p)

print(‘\n\n\n\n\n‘)

# 定义一个Person类
class Person(object):
  """人类"""
  def __init__(self, name , age):
    self.name = name
    self.age = age

  # __str__()这个特殊方法会在尝试将对象转换为字符串的时候调用
  # 它的作用可以用来指定对象转换为字符串的结果 (print函数) 
  def __str__(self):
    print(Person)
    return ‘Person [name=%s , age=%d]‘%(self.name,self.age) 

p = Person(‘小黑‘,18)
print(p)

python中类的输出或类的实例输出为何是<__main__类名 object at xxxx>这种形式?

相关文章

Python实现针对json中某个关键字段进行排序操作示例

Python实现针对json中某个关键字段进行排序操作示例

本文实例讲述了Python实现针对json中某个关键字段进行排序操作。分享给大家供大家参考,具体如下: 示例: json_array = [{"time":20150312,"val...

Python urlopen()和urlretrieve()用法解析

这篇文章主要介绍了Python urlopen()和urlretrieve()用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...

python plotly绘制直方图实例详解

python plotly绘制直方图实例详解

计算数值出现的次数 import cufflinks as cf cf.go_offline() import numpy as np import pandas as pd se...

python使用Berkeley DB数据库实例

本文实例讲述了python使用Berkeley DB数据库的方法,分享给大家供大家参考。 具体实现方法如下: try: from bsddb import db except...

Anaconda之conda常用命令介绍(安装、更新、删除)

Anaconda之conda常用命令介绍(安装、更新、删除)

anaconda用法: 查看已经安装的包: pip list 或者 conda list 安装和更新: pip install requests pip install request...