Python 簡(jiǎn)介
Python 是一種解釋性, 高級(jí)和通用的變成語言. Python 由 Guido van Rossum 創(chuàng)建并 1991 年首次發(fā)布. Python 的設(shè)計(jì)強(qiáng)調(diào)代碼的可讀性, 其雨大允許我們使用相較于 C++ 或 Java 更少的代碼表達(dá)概念. Python 使得變成變得更簡(jiǎn)單, 更快捷. 下面就跟著小白我來一起看一下 Python 常用的內(nèi)置函數(shù).
為什么要學(xué)習(xí)內(nèi)置函數(shù)
Python 內(nèi)置函數(shù) (Built-In Function) 是 Python 解釋器直接提供的函數(shù), 相較于別的 Python 函數(shù), 無需導(dǎo)入任何模塊即可使用. 熟悉掌握 Python 的內(nèi)置函數(shù)不僅可以幫助我們快速的完成常見的變成任務(wù), 還可以使得我們的代碼更加簡(jiǎn)潔, 易讀.
數(shù)據(jù)類型和轉(zhuǎn)換
int(): 轉(zhuǎn)為整數(shù)
int()
函數(shù)可以用于將一個(gè)字符串 (string) 或數(shù)字轉(zhuǎn)換為整形 (int).
格式:
num_int = int(需要轉(zhuǎn)換的變量)
例子:文章來源地址http://www.zghlxwxcb.cn/news/detail-754259.html
# float->int
x = int(2.8) # 輸出 x=2
y = int("3") # 輸出 y=3
常見用法:
# 將一個(gè)字符串組成的列表轉(zhuǎn)換為整型
list_str = ["1", "2", "3", "4", "5"]
list_int = [int(i) for i in list_str]
print(list_str)
print(list_int)
輸出結(jié)果:
['1', '2', '3', '4', '5']
[1, 2, 3, 4, 5]
float(): 轉(zhuǎn)為浮點(diǎn)數(shù)
float()
函數(shù)用于將一個(gè)字符串或數(shù)字轉(zhuǎn)換為浮點(diǎn)數(shù).
格式:
num_float = float(需要轉(zhuǎn)換的白能量)
例子:
# int->float
x = float(2) # 輸出 x=2.0
# string->float
y = float("3") # 輸出 y=3.0
z = float("4.2") # 輸出 z=4.2
list(): 轉(zhuǎn)為列表
list()
函數(shù)用于將一個(gè)序列轉(zhuǎn)為列表 (list).
格式:
convert_list = list(需要轉(zhuǎn)換的序列)
例子:
# string->list
x = list("我是小白呀") # 輸出 x=['我', '是', '小', '白', '呀']
# tuple->list
y = list((1, 2, 3, 4, 5)) # 輸出 y=[1, 2, 3, 4, 5]
tuple(): 轉(zhuǎn)換為元組
tuple()
函數(shù)用于將一個(gè)序列轉(zhuǎn)換為元組.
格式:
convert_tuple = tuple(需要轉(zhuǎn)換的序列)
例子:
# string->tuple
x = tuple("我是小白呀") # 輸出 x=('我', '是', '小', '白', '呀')
# list->tuple
y = tuple([1, 2, 3, 4, 5]) # 輸出 y=(1, 2, 3, 4, 5)
z = tuple(['1', '2', 3, 4, 5]) # 輸出 z=('1', '2', 3, 4, 5)
set():轉(zhuǎn)換為集合
set()
函數(shù)用于創(chuàng)建一個(gè)無序不重復(fù)元素集.
格式:
convert_set = set(需要轉(zhuǎn)換的變量)
例子:
# string->set
x = set("hello") # 輸出 x={'o', 'e', 'h', 'l'}
# list->set
y = set([1, 2, 2, 3, 4]) # 輸出 y={1, 2, 3, 4}
常見用法:
# 對(duì)列表進(jìn)行去重
original_list = [1, 2, 2, 3, 4, 5]
unique_list = list(set(original_list))
print("原始列表:", original_list)
print("去重列表:", unique_list)
# 對(duì)字符串進(jìn)行去重
original_str = "abbccd"
unique_list = list(set(original_str))
print("原始字符串:", original_str)
print("去重列表:", unique_list)
輸出結(jié)果:
原始列表: [1, 2, 2, 3, 4, 5]
去重列表: [1, 2, 3, 4, 5]
原始字符串: abbccd
去重列表: ['d', 'b', 'a', 'c']
dict(): 創(chuàng)建字典:
dict()
函數(shù)用于創(chuàng)建一個(gè)字典.
例子:
# 創(chuàng)建字典
x = dict(name="我是小白呀", age=18) # x={'name': '我是小白呀', 'age': 18}
常見用法, 通過zip()
函數(shù)創(chuàng)建字典:
# 將2個(gè)數(shù)組合并為字典
list_name = ["張三", "李四", "我是小白呀"] # 名字?jǐn)?shù)組
list_age = [45, 63, 18] # 年齡數(shù)組
dict_age = dict(zip(list_name, list_age)) # 字典
# 調(diào)試輸出
print("名字?jǐn)?shù)組:", list_name)
print("年齡數(shù)組:", list_age)
print("合并的字典:", dict_age)
輸出結(jié)果:
名字?jǐn)?shù)組: ['張三', '李四', '我是小白呀']
年齡數(shù)組: [45, 63, 18]
合并的字典: {'張三': 45, '李四': 63, '我是小白呀': 18}
數(shù)學(xué)運(yùn)算
接下來, 小白我?guī)Т蠹襾砹私庖幌?Python 中的數(shù)學(xué)運(yùn)算符相關(guān)的內(nèi)置函數(shù).
abs(): 絕對(duì)值
abs()
返回?cái)?shù)字的絕對(duì)值.
格式:
num_abs = abs(需要取絕對(duì)值的變量)
例子:
x = abs(-2) # 輸出 x=2
y = abs(-3.1415926) # 輸出 y=3.1415926
pow(): 冪運(yùn)算
pow()
函數(shù)返回 x 的 y 次冪.
格式:
output = pow(x, y)
例子:
x = pow(4, 3) # 輸出 x=4^3=64
y = pow(2, 10) # 輸出 y=2^10=1024
常用方法:
# 獲取平方數(shù)組
original_list = [1, 2, 3, 4, 5]
squared_list = [pow(i, 2) for i in original_list]
# 調(diào)試輸出
print("原始數(shù)組:", original_list)
輸出結(jié)果:
原始數(shù)組: [1, 2, 3, 4, 5]
平方數(shù)組: [1, 4, 9, 16, 25]
round(): 四舍五入
round()
函數(shù)返回浮點(diǎn)數(shù)的四舍五入值.
格式:
num_round = round(number, ndigits=None)
參數(shù):
- num: 浮點(diǎn)數(shù)
- digits: 保留小數(shù)點(diǎn)后幾位, 默認(rèn)為 None, 及四舍五入到整數(shù)
例子:
x = round(3.1415926) # 輸出 x=3
y = round(3.1415926, 2) # 輸出 y=3.14
常用方法:
# Todo: 將 DataFrame 中的數(shù)據(jù)取整
np.random.seed(0) # 設(shè)置隨機(jī)數(shù)種子
list_id = [i for i in range(1, 11)] # 創(chuàng)建 id 數(shù)組 (1-11)
list_score = [np.random.rand() * 10 for _ in range(10)] # 創(chuàng)建 score 數(shù)組 [0-10) 隨機(jī)小數(shù)
# 創(chuàng)建一個(gè)模擬 DataFrame, 數(shù)據(jù)為0-10的分?jǐn)?shù)
df = pd.DataFrame({"id": list_id, "score":list_score})
print(df)
# 取整
df["score"] = round(df["score"])
print(df)
輸出結(jié)果:
id score
0 1 5.488135
1 2 7.151894
2 3 6.027634
3 4 5.448832
4 5 4.236548
5 6 6.458941
6 7 4.375872
7 8 8.917730
8 9 9.636628
9 10 3.834415
id score
0 1 5.0
1 2 7.0
2 3 6.0
3 4 5.0
4 5 4.0
5 6 6.0
6 7 4.0
7 8 9.0
8 9 10.0
9 10 4.0
min(): 最小值
min()
函數(shù)返回給定參數(shù)的最小值, 參數(shù)可以為序列.
格式
out = min(iterable, *, key=None)
- iterable: 可迭代對(duì)象, 包括列表, 元組, 字符串等
- key: 指定函數(shù), 默認(rèn)為 None, 及比較元素本身
例子:
# 列表 min() 使用
list1 = [1, 2, 3, 4, 5]
list2 = ["a", "b", "c"]
min1 = min(list1)
min2 = min(list2)
# 元組 min() 使用
tuple1 = (2, 5, 9)
min3 = min(tuple1)
# 字典 min() 使用
dict1 = {'a': 70, 'b': 20, 'c': 30, 'd': 40}
min4 = min(dict1)
min5 = min(dict1, key=dict1.get)
# 調(diào)試輸出
print(list1, "中列表元素最小值:", min1)
print(list2, "中列表元素最小值:", min2)
print(tuple1, "中元組元素最小值:", min3)
print(dict1, "中字典 key 最小值:", min4)
print(dict1, "中字典 value 最小值對(duì)應(yīng)的 key:", min5)
輸出結(jié)果:
[1, 2, 3, 4, 5] 中列表元素最小值: 1
['a', 'b', 'c'] 中列表元素最小值: a
(2, 5, 9) 中元組元素最小值: 2
{'a': 70, 'b': 20, 'c': 30, 'd': 40} 中字典 key 最小值: a
{'a': 70, 'b': 20, 'c': 30, 'd': 40} 中字典 value 最小值對(duì)應(yīng)的 key: b
max():最大值
max()
函數(shù)返回給定參數(shù)的最大值, 參數(shù)可以為序列.
格式
out = max(iterable, *, key=None)
- iterable: 可迭代對(duì)象, 包括列表, 元組, 字符串等
- key: 指定函數(shù), 默認(rèn)為 None, 及比較元素本身
例子:
# 列表 max() 使用
list1 = ["abc", "bc", "c", "d"]
max1 = max(list1)
max2 = max(list1, key=len)
list2 = [3, -6, 7, -8, 2]
max3 = max(list2)
max4 = max(list2, key=abs)
# 字典 max() 使用
students = [
{"name": "Alice", "score": 85},
{"name": "Bob", "score": 90},
{"name": "Charlie", "score": 78}
]
max5 = max(students, key=lambda x: x['score'])
# 調(diào)試輸出
print(list1, "中列表元素最大值:", max1)
print(list1, "中列表元素最長值:", max2)
print(list2, "中列表元素最大值:", max3)
print(list2, "中列表元素最大絕對(duì)值:", max4)
print(students, "中字典特定鍵最大值:", max5)
輸出結(jié)果:
['abc', 'bc', 'c', 'd'] 中列表元素最大值: d
['abc', 'bc', 'c', 'd'] 中列表元素最長值: abc
[3, -6, 7, -8, 2] 中列表元素最大值: 7
[3, -6, 7, -8, 2] 中列表元素最大絕對(duì)值: -8
[{'name': 'Alice', 'score': 85}, {'name': 'Bob', 'score': 90}, {'name': 'Charlie', 'score': 78}] 中字典特定鍵最大值: {'name': 'Bob', 'score': 90}
sum(): 求和
sum()
: 函數(shù)用于對(duì)集合進(jìn)行求和計(jì)算.
例子:
numbers = [1, 2, 3, 4, 5]
numbers_sum = sum(numbers) # 輸出numbers_sum=15
常用方法:
# Todo: 將 DataFrame 中的學(xué)生每天用餐消費(fèi)進(jìn)行求和
# 創(chuàng)建數(shù)據(jù)
student_id = [111, 111, 111, 111, 112, 112, 112, 113, 113, 113, 113]
day = [1, 1, 2, 2, 1, 2, 3, 1, 2, 3, 3]
pay = [12, 23, 18, 26, 8, 11, 14, 15, 20, 21, 16]
df = pd.DataFrame({"student id": student_id, "day": day, "pay": pay})
print(df)
# 按 id 求和
result = df.groupby(["student id"])["pay"].sum().reset_index()
print("每個(gè)學(xué)生總消費(fèi):", result, sep="\n")
# 按 id 和日期求和
result = df.groupby(["student id", "day"])["pay"].sum().reset_index()
print("每個(gè)學(xué)生每日消費(fèi):", result, sep="\n")
輸出結(jié)果:
每個(gè)學(xué)生總消費(fèi):
student id pay
0 111 79
1 112 33
2 113 72
每個(gè)學(xué)生每日消費(fèi):
student id day pay
0 111 1 35
1 111 2 44
2 112 1 8
3 112 2 11
4 112 3 14
5 113 1 15
6 113 2 20
7 113 3 37
divmod(): 商和余數(shù)
divmod()
函數(shù)接收兩非復(fù)數(shù)的參數(shù), 返回一對(duì)數(shù)的商和余數(shù).
格式:
output = divmod(a, b)
參數(shù):文章來源:http://www.zghlxwxcb.cn/news/detail-754259.html
- a: 除數(shù)
- b:被除數(shù)
- return: 商, 余, 同 (a // b, a % b)
例子:
# 8 對(duì) 3 的商和余數(shù)
result = divmod(8, 3) # 輸出 result=(2, 2)
到了這里,關(guān)于【Python 零基礎(chǔ)入門】常用內(nèi)置函數(shù) 初探的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!