【啥?我的墙头草“枯萎”了!】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 @冬雪雪冬 @~风介~ @不二如是 看看 召唤大法是什么鬼?{:10_266:}{:10_266:}
写的很不错啦,扫扫盲挺好的…… 看看 那个列表是什么东东。都没遇到过 ErTian 发表于 2018-7-23 22:26
那个列表是什么东东。都没遇到过
不对。这两个我都知道。第二个看错了{:10_256:} 想知道为啥。。。 学习了 当调用函数没有加括号时,会返回函数的内存地址。当调用函数加括号里,调用函数方法,返回函数对象 xy123963 发表于 2018-7-24 09:02
当调用函数没有加括号时,会返回函数的内存地址。当调用函数加括号里,调用函数方法,返回函数对象
额 不对啊,第一个是返回对象,第二个是默认返回None 无符号整形 发表于 2018-7-24 09:04
额 不对啊,第一个是返回对象,第二个是默认返回None
嗯嗯,学习了,谢谢楼主指点{:5_110:} 学习了 什么 学习 天哪 这个帖子这么冷吗。。。{:10_258:} 看看什么草 谢谢楼主 1.不加括号是查看 func 的类型
加括号是实例化函数 func
2.list2 = list1 是把list1的地址复制给list2 -----浅拷贝
list3 = list1【:】 是把list1 里面的东西拿出来赋值给list3 -------深拷贝
如果说错了,请大神指教。。。。。 看看 糖妖妖66 发表于 2018-7-25 10:53
1.不加括号是查看 func 的类型
加括号是实例化函数 func
2.list2 = list1 是把list1的地址复制给list2...
已补上~谢谢~(*^▽^*)
页:
[1]
2