一个账号 发表于 2020-3-20 13:52:23

Python len() 函数

本帖最后由 一个账号 于 2020-3-20 13:55 编辑

Python len() 函数

语法

len(obj, /)

参数



参数描述

obj一个可迭代对象



描述

len() 函数用于获取对象的长度。

返回值

返回对象的长度。

例子

>>> len(5)   # 不是可迭代对象报错
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
    len(5)
TypeError: object of type 'int' has no len()
>>> len()
5
>>> len(range(10))
10
>>> len("abcde")
5
>>> len(b"abcde")
5
>>> len({2, 6, 2})
2

永恒的蓝色梦想 发表于 2020-3-20 14:31:34

def len(obj,/):
        try:
                return obj.__len__()
        except AttributeError:
                raise TypeError(f"object of type '{type(obj).__name__}' has no len()")

WangJS 发表于 2020-3-20 18:40:20

第12行是为什么?
>>> len(b"abcde")
5

一个账号 发表于 2020-3-20 18:49:32

WangJS 发表于 2020-3-20 18:40
第12行是为什么?

获取 b"abcde" 的长度

WangJS 发表于 2020-3-20 22:35:25

一个账号 发表于 2020-3-20 18:49
获取 b"abcde" 的长度

“b”是干什么的?

一个账号 发表于 2020-3-20 22:36:41

WangJS 发表于 2020-3-20 22:35
“b”是干什么的?

将 "abcde" 转换为 bytes 类型

永恒的蓝色梦想 发表于 2020-3-20 23:04:01

大概可以这么实现def len(obj,/):
try:
    return obj.__len__()
except:
    raise TypeError(f"object of type '{type(obj).__name__}' has no len()")
页: [1]
查看完整版本: Python len() 函数