一、delattr
概念
在 Python3 中,delattr() 函數用于删除對象的指定屬性。
用法
delattr() 函數的使用方法如下:
delattr(object, name)
其中,object 是要删除屬性的對象,name 是要删除的屬性名。
作用和功能
delattr() 函數的作用是删除對象的指定屬性。如果對象中不存在該屬性,則會抛出 AttributeError 異常。
示例
以下是一個簡單的示例,示範了如何使用 delattr() 函數删除對象的屬性:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p = Person("Tom", 20)
print("删除屬性前:")
print(p.__dict__) # 輸出對象的屬性字典
delattr(p, "age") # 删除對象的 age 屬性
print("删除屬性後:")
print(p.__dict__) # 再次輸出對象的屬性字典
輸出結果如下:
删除屬性前:
{'name': 'Tom', 'age': 20}
删除屬性後:
{'name': 'Tom'}
在上面的示例中,我們首先建立了一個 Person 類,該類有兩個屬性:name 和 age。然後我們建立了一個 Person 對象 p,并将其屬性設定為 name="Tom" 和 age=20。接着我們使用 delattr() 函數删除了 p 對象的 age 屬性,最後再次輸出了對象的屬性字典,可以看到 age 屬性已經被删除了。
二、divmod
概念
divmod()是Python3内置函數之一,用于同時傳回兩個數的商和餘數。
用法
divmod(a, b)
其中a和b為兩個數字,函數傳回值為一個元組,包含兩個數字,第一個數字為a除以b的商,第二個數字為a除以b的餘數。
作用和功能
divmod()函數的作用是簡化代碼,并提高代碼的可讀性。它的功能是計算兩個數字的商和餘數,這在數學計算中是非常常見的操作。
示例
a = 13
b = 4
result = divmod(a, b)
print(result) # (3, 1)
# 使用拆包的方式擷取商和餘數
quotient, remainder = divmod(a, b)
print(quotient) # 3
print(remainder) # 1
以上代碼中,将13除以4,得到的商為3,餘數為1,使用divmod()函數可以一次性擷取這兩個值,也可以使用拆包的方式分别擷取商和餘數。
三、float()
概念
float()是Python3内置的一個函數,用于将字元串、整數或者其他類型的數字轉換成浮點數。
用法
float()函數的基本用法如下:
float([x])
其中,x是要轉換的數字。如果省略x參數,則傳回0.0。
作用和功能
float()函數的作用是将一個數字轉換成浮點數類型。浮點數類型是一種帶小數點的數字類型,相對于整數類型來說,可以表示更為精确的小數值。
float()函數的功能包括以下幾個方面:
- 将字元串類型的數字轉換成浮點數類型的數字。
- 将整數類型的數字轉換成浮點數類型的數字。
- 将其他類型的數字轉換成浮點數類型的數字。
舉例說明
下面是一些使用float()函數的例子:
# 将字元串類型的數字轉換成浮點數類型的數字
f1 = float("3.14")
print(f1) # 3.14
print(type(f1)) # <class 'float'>
# 将整數類型的數字轉換成浮點數類型的數字
f2 = float(5)
print(f2) # 5.0
print(type(f2)) # <class 'float'>
# 将其他類型的數字轉換成浮點數類型的數字
f3 = float(True)
print(f3) # 1.0
print(type(f3)) # <class 'float'>
在上面的例子中,float()函數将字元串類型的數字、整數類型的數字和布爾類型的數字都成功轉換成了浮點數類型的數字,并傳回了相應的結果。
四、frozenset()
概念
frozenset()函數用于建立一個不可變的集合,即建立一個當機的集合,它是不可修改的。與set()不同的是,frozenset()是不可變類型,是以可以作為字典的鍵或其他集合的元素。
用法
frozenset()函數的文法如下:
frozenset([iterable])
其中,iterable是可疊代對象,如清單、元組等。
作用和功能
frozenset()函數的作用是建立一個不可變的集合,這個集合可以被用作字典鍵或其他集合的元素,因為它是不可變的。frozenset()函數還可以用于去重和集合運算,例如并集、交集、差集等。
示例
下面是一些frozenset()函數的示例:
示例1:建立一個空的當機集合
f_set = frozenset()
print(f_set) # output: frozenset()
示例2:建立一個有元素的當機集合
f_set = frozenset([1, 2, 3, 4])
print(f_set) # output: frozenset({1, 2, 3, 4})
示例3:将清單轉換為當機集合,并用作字典的鍵
f_set = frozenset([1, 2, 3, 4])
my_dict = {f_set: "value"}
print(my_dict) # output: {(frozenset({1, 2, 3, 4})): 'value'}
示例4:當機集合的運算
f_set1 = frozenset([1, 2, 3, 4])
f_set2 = frozenset([3, 4, 5, 6])
print(f_set1.union(f_set2)) # output: frozenset({1, 2, 3, 4, 5, 6})
print(f_set1.intersection(f_set2)) # output: frozenset({3, 4})
print(f_set1.difference(f_set2)) # output: frozenset({1, 2})