🍰 个人主页:不摆烂的小劉
🍞文章有不合理的地方请各位大佬指正。
🍉文章不定期持续更新,如果我的文章对你有帮助➡️ 关注🙏🏻 点赞👍 收藏⭐️
问题背景
将数据从存放到class,然后通过append()函数添加到列表(list),但是打印列表中的对象,却是
[<__main__.weather object at 0x00000189D0A99BB0>, <__main__.weather object at 0x00000189D0A99C40>, <__main__.weather object at 0x00000189D0A999A0>, <__main__.weather object at 0x00000189D0A99BE0>, <__main__.weather object at 0x00000189D0A99CD0>, <__main__.weather object at 0x00000189D0A99CA0>, <__main__.weather object at 0x00000189D0A99D60>]
解决
可以在class
对象中添加__repr__
函数来正常打印
打印结果
[2022-10-29 15 多云, 2022-10-30 17 多云转阴, 2022-10-31 19 小雨转晴, 2022-11-01 16 晴, 2022-11-02 18 晴转小雨, 2022-11-03 13 多云, 2022-11-04 13 阴转晴]
__repr__()
函数
官方文档解释
大致意思:返回一个表达式(大部分是字符串) 用来实例化 这样的 <......... >
(内存中)的字符串。这个函数常用与调试(面向开发者),__str__()
面向用户。