id()
input()
int()
isinstance(object, classinfo)
- object:要检查的对象。
- classinfo:可以是类、类型、元组(包含多个类或类型)或由
abc.ABCMeta
定义的抽象基类。
返回值
- 如果
object
是classinfo
的实例或其子类的实例,则返回True
。 - 否则,返回
False
。
print(isinstance(10, int)) # 输出:True
print(isinstance(3.14, float)) # 输出:True
print(isinstance("hello", str)) # 输出:True
print(isinstance(True, bool)) # 输出:True
print(isinstance([1, 2, 3], list)) # 输出:True
检查对象是否是多个类中的一个的实例
print(isinstance(10, (int, float, str))) # 输出:True
print(isinstance(3.14, (int, float, str))) # 输出:True
print(isinstance("hello", (int, float, str))) # 输出:True
print(isinstance(True, (int, float, str))) # 输出:False
issubclass(class, classinfo)
- class:要检查的类。
- classinfo:可以是类、类型、元组(包含多个类或类型)或由
abc.ABCMeta
定义的抽象基类。
返回值
- 如果
class
是classinfo
的子类或classinfo
本身,则返回True
。 - 否则,返回
False
。
class Animal:
pass
class Dog(Animal):
pass
class Cat(Animal):
pass
print(issubclass(Dog, Animal)) # 输出:True
print(issubclass(Cat, Animal)) # 输出:True
print(issubclass(Animal, Dog)) # 输出:False
print(issubclass(Dog, (Animal, Cat))) # 输出:True
print(issubclass(Cat, (Animal, Dog))) # 输出:True
print(issubclass(Animal, (Dog, Cat))) # 输出:False
iter(object[, sentinel])
是 Python 中的一个内置函数,用于获取一个对象的迭代器。迭代器是一个可以记住遍历位置的对象,通过它可以在循环中逐个访问集合中的元素。
- object:要获取迭代器的对象,通常是可迭代对象,如列表、元组、字典、集合、字符串等。
- sentinel:可选参数,用于指定一个标记值,当
object
的__next__
方法返回该标记值时,迭代器会引发StopIteration
异常。主要用于从文件或网络流中读取数据时。
返回值
返回一个迭代器对象。
my_list = [1, 2, 3, 4, 5]
iterator = iter(my_list)
print(next(iterator)) # 输出:1
print(next(iterator)) # 输出:2
print(next(iterator)) # 输出:3
print(next(iterator)) # 输出:4
print(next(iterator)) # 输出:5
# 再次调用 next(iterator) 会引发 StopIteration 异常
my_dict = {'a': 1, 'b': 2, 'c': 3}
iterator = iter(my_dict)
print(next(iterator)) # 输出:'a'
print(next(iterator)) # 输出:'b'
print(next(iterator)) # 输出:'c'
# 再次调用 next(iterator) 会引发 StopIteration 异常