爱笑的无赖 发表于 2022-5-23 13:12:26

关于各种对象的叫法。 求助 【好混乱啊】

class abc:
    def func(self):
      print('我是func')

a = abc()
a.func() #这是类的实例对象?


class abc:
    def func(self):
      print('我是func')

abc.func() #这叫类对象吗?


import numpy

a = numpy.array()   #这是创建numpy模块下array类的对象是吗?

这几个叫法是对的吗? 已经有点混乱了。

人造人 发表于 2022-5-23 13:21:06

Everything is an object

人造人 发表于 2022-5-23 13:23:40

一切皆对象
https://blog.csdn.net/weixin_46117600/article/details/107545626

人造人 发表于 2022-5-23 13:29:54

#!/usr/bin/env python
#coding=utf-8

class abc:
    def func(self):
      print('我是func')

a = abc()
a.func() # 这是在调用函数


#!/usr/bin/env python
#coding=utf-8

class abc:
    def func(self):
      print('我是func')

abc.func() # 这样不报错?


#!/usr/bin/env python
#coding=utf-8

import numpy

#a = numpy.array()# 这是创建numpy模块下array类的对象是吗?
                  # 是
                  # 但是需要参数吧?
a = numpy.array([])

豆嘉木 发表于 2022-5-23 15:25:08

python一切皆对象

爱笑的无赖 发表于 2022-5-23 17:31:23

人造人 发表于 2022-5-23 13:29


哈哈 , 我就举个例子,都没有尝试去运行。 确实写的很不严谨 😁

爱笑的无赖 发表于 2022-5-23 17:32:00

豆嘉木 发表于 2022-5-23 15:25
python一切皆对象

虽说一切都是对象。 可是我就是找不到对象{:5_107:}

豆嘉木 发表于 2022-5-23 17:38:46

爱笑的无赖 发表于 2022-5-23 17:32
虽说一切都是对象。 可是我就是找不到对象

咦?.之前的不就是对象吗
算了给你解释下,对象.方法
嗨这下能给我个最佳答案啦!

不会起名字的我 发表于 2022-5-24 15:08:48

本帖最后由 不会起名字的我 于 2022-5-24 15:11 编辑

类就相当于一个工程图,对象就是按照工程图做出来的成品

阿奇_o 发表于 2022-5-24 17:11:26

本帖最后由 阿奇_o 于 2022-5-24 17:31 编辑

一切皆对象,但 我们永远看不见 那个对象 —— 因为它本质是内存里的0和1
—— 我们只能通过用一个 字符(符号)名 来 绑定 那个内存对象所在的地址 ,再通过该地址读取到该地址上存储的 值 。
又为了更好地处理不同类型的值,计算机科学家们又把 这些值,分为若干个 基本数据类型 (数值型、字符型、浮点数型等)。

所以,一个对象,天然具有 代表其所在地址的id,其值value,其所属类型 type,以及99.99..%都会同时存在的、和它绑定的某个字符名字(不然你咋调用该对象)

所以,不太清楚时,就问自己:
   - 这里什么字符名 跟 什么类型对象,进行了绑定?这是什么类型、什么类?
   - 我看见的是对象的 值吗? 还是代表该对象的某些特定字符值?
    (print(obj)调用的是obj.__str__() 所返回的值,但__str__是可以自定义的! 而__repr__也可以自定义,那你知道:什么情况下会调用obj.__repr__() ? )

例子:
class Person:
    def __init__(self, name, age, sex):
      self.name = name
      self.age = age
      self.sex = sex

张三 = Person(name='zs',age=20, sex='男')   

----------请问-------------
1. 这里的对象/实例,在哪?   "张三" 是该对象的什么?"张三"和该对象之间是什么关系?
    那么,如何将"李四"也绑定到这个对象上?这样"张三"和"李四"又是什么关系?
2. 该对象包含了哪些"值"(属性)?
3. print(张三)   返回什么?——取决于你 在Person里 如何自定义 __str__。 (没有定义?那就调用父类的__str__)



进阶理解:
- 函数也是对象(函数名就是所绑定的"符号名",函数体和参数等意味着其值和类型)。   
- 类也是对象(类名就是所绑定的"符号名",……)


页: [1]
查看完整版本: 关于各种对象的叫法。 求助 【好混乱啊】