例如: print('V2EX'.len()) 和 print(len('V2EX')) 的值都是 4 这两个语句有什么区别呢?
例如: print('V2EX'.len()) 和 print(len('V2EX')) 的值都是 4 这两个语句有什么区别呢?
1
ysc3839 Sep 30, 2019
>>> print('V2EX'.len())
Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'str' object has no attribute 'len' |
3
RickyHao Sep 30, 2019 via Android
Google: Python Magic Method
请( |
4
BingoXuan Sep 30, 2019
应该是__len__()吧,len 只是调用入参的__len__()而已,一个语法糖函数
Object.method()和 function(Object)根本就是两个不同的调用,一个是调用对象绑定的方法,另一个是对象作为入参调用函数。虽然可以做到一样的功能,但范式是不一样的。 |
6
Dvel Sep 30, 2019 |
8
renmu Sep 30, 2019 via Android
别问,问就是优雅,Python 特性(笑,你可以去 Google 一下,作者有解释过
|
9
Xs0ul Sep 30, 2019
在 pandas/numpy 里有 a.size 表示元素个数, a.shape 表示各维尺寸(类似 [3, 4])
而在 pytorch 里 a.shape 和 a.size()同义, 表示张量的各维大小,类似 [3, 4]. 而用 a.nelement()表示元素个数. 混着用的时候真的很坑 |
10
ochatokori Sep 30, 2019 via Android
主题的下划线被当成 markdown 的语法渲染了,
评论区没有 markdown 就没有这个问题 |
11
msg7086 Oct 1, 2019
Python 里搞了特殊化而已。
|
12
hxse Oct 1, 2019
主题区的 markdown 会渲染,但评论区不会???
|