无符号整形 发表于 2018-7-23 21:16:11

【啥?我的墙头草“枯萎”了!】Python的对象

本帖最后由 无符号整形 于 2018-8-9 20:36 编辑

最近很多我发现鱼油问类似这样的问题:
1.为什么这样调用行,那样调用不行?
>>> def func():
      print('hi,hello,bye,goodbye,nicetomeetyou')

      
>>> func
<function func at 0x00000000036D81E0>
>>> func()
hi,hello,bye,goodbye,nicetomeetyou
>>>
2.为什么这样做列表墙头草会“枯萎”?
>>> list1 =
>>> list2 = list1
>>> list3 = list1[:]
>>> list1 = 2
>>> list2

>>> list3

>>>
……
相信各位Py大神都知道这是什么问题吧?没错!对象……

{:10_247:}
PS:我承认这个东西曾经困扰了我许久。。。

好吧,进入正题。
你见过当你调用函数时却没有加括号时弹出的奇怪东西吗?
比如这些
<function func at 0x00000000036D8268>
<function funcccccc at 0x00000000036D81E0>
等等……

等等!你知道这些是什么吗?

**** Hidden Message *****

码字码得我好累啊~
现在施展召唤大法~嘿嘿~
@小甲鱼 @wei_Y @冬雪雪冬 @~风介~ @不二如是

一路吧 发表于 2018-7-23 21:34:47

看看

TyCk 发表于 2018-7-23 21:52:02

召唤大法是什么鬼?{:10_266:}{:10_266:}
写的很不错啦,扫扫盲挺好的……

leoeve 发表于 2018-7-23 22:06:51

看看

ErTian 发表于 2018-7-23 22:26:17

那个列表是什么东东。都没遇到过

ErTian 发表于 2018-7-23 22:30:41

ErTian 发表于 2018-7-23 22:26
那个列表是什么东东。都没遇到过

不对。这两个我都知道。第二个看错了{:10_256:}

独吟月上 发表于 2018-7-23 23:15:11

想知道为啥。。。

zhou995287902 发表于 2018-7-24 07:23:09

学习了

xy123963 发表于 2018-7-24 09:02:49

当调用函数没有加括号时,会返回函数的内存地址。当调用函数加括号里,调用函数方法,返回函数对象

无符号整形 发表于 2018-7-24 09:04:50

xy123963 发表于 2018-7-24 09:02
当调用函数没有加括号时,会返回函数的内存地址。当调用函数加括号里,调用函数方法,返回函数对象

额 不对啊,第一个是返回对象,第二个是默认返回None

xy123963 发表于 2018-7-24 09:14:02

无符号整形 发表于 2018-7-24 09:04
额 不对啊,第一个是返回对象,第二个是默认返回None

嗯嗯,学习了,谢谢楼主指点{:5_110:}

还差几 发表于 2018-7-24 09:39:06

学习了

Python.爱好者 发表于 2018-7-24 12:45:22

什么

见鲸 发表于 2018-7-24 15:28:17

学习

无符号整形 发表于 2018-7-24 20:34:10

天哪 这个帖子这么冷吗。。。{:10_258:}

塔利班 发表于 2018-7-24 20:48:15

看看什么草

mesica 发表于 2018-7-25 00:15:52

谢谢楼主

糖妖妖66 发表于 2018-7-25 10:53:56

1.不加括号是查看 func 的类型
加括号是实例化函数 func
2.list2 = list1 是把list1的地址复制给list2   -----浅拷贝
   list3 = list1【:】 是把list1 里面的东西拿出来赋值给list3    -------深拷贝


如果说错了,请大神指教。。。。。

jxy147258 发表于 2018-7-25 11:02:38

看看

无符号整形 发表于 2018-7-25 15:31:42

糖妖妖66 发表于 2018-7-25 10:53
1.不加括号是查看 func 的类型
加括号是实例化函数 func
2.list2 = list1 是把list1的地址复制给list2...

已补上~谢谢~(*^▽^*)
页: [1] 2
查看完整版本: 【啥?我的墙头草“枯萎”了!】Python的对象