Python強(qiáng)大的語(yǔ)法支持你知道嗎
1 Python便捷的數(shù)學(xué)運(yùn)算
1.1 整數(shù)計(jì)算
首先,我們熟知的整數(shù)是不帶小數(shù)部分的整數(shù),Python支持4種基本算術(shù)運(yùn)算:+(加)、-(減)、*(乘)和 /(除)。并且使用 ** 和 % 表示乘方和求余。并且其優(yōu)先級(jí)與數(shù)學(xué)所學(xué)的優(yōu)先級(jí)是一致的。?
python中還提供了一個(gè)整除的算術(shù),其運(yùn)算符是 // ,原理與 / 類似,但其計(jì)算結(jié)果總是整數(shù)。該運(yùn)算符運(yùn)算的結(jié)果是總是將小數(shù)點(diǎn)后的值丟棄,而不是四舍五入的方式。
可以總結(jié)將python的基本運(yùn)算符總結(jié)為一張表,如下表:
名稱 |
運(yùn)算符 |
加法 |
+ |
減法 |
- |
乘法 |
* |
除法 |
/ |
乘方 |
** |
取余 |
% |
整除 |
// |
并且,Python與其它大多數(shù)編程語(yǔ)言有一點(diǎn)不同的是,對(duì)整數(shù)的長(zhǎng)度沒(méi)有限制??梢詧?zhí)行數(shù)十位甚至更多位數(shù)的運(yùn)算。?
1.2 浮點(diǎn)數(shù)計(jì)算
Python不光對(duì)整數(shù)運(yùn)算提供了支持,同樣對(duì)我們俗稱的小數(shù)也提供了便利的運(yùn)算。其運(yùn)算符與規(guī)則與整數(shù)計(jì)算基本一致,以下展示幾個(gè)小例子:
其中,e-09表示10-9,Python對(duì)于小數(shù)點(diǎn)的應(yīng)用是十分靈活的,但是也存在很小的近似誤差,比如9.1*0.06的數(shù)值。但要注意的一點(diǎn)是:Python有些版本對(duì)于浮點(diǎn)數(shù)是位數(shù)限制的(對(duì)比下面兩張圖),所以可能會(huì)出現(xiàn)溢出或者未知報(bào)錯(cuò),在真正開(kāi)發(fā)的過(guò)程中,盡量不要寫(xiě)這種代碼(否則背鍋)。?
1.3 復(fù)數(shù)計(jì)算
Python同樣支持復(fù)數(shù)計(jì)算,復(fù)數(shù)一般是設(shè)計(jì)-1的平方根的數(shù)字,在Python中一般用1j代表-1的平方根。例如:
對(duì)于復(fù)數(shù)的計(jì)算通常應(yīng)用于統(tǒng)計(jì)學(xué)和科學(xué)計(jì)算中,一般的開(kāi)發(fā)人員是很少用到復(fù)數(shù)的。
1.4 內(nèi)置數(shù)學(xué)函數(shù)
除了一些基本的數(shù)學(xué)運(yùn)算之外,Python中還內(nèi)置了很多的數(shù)學(xué)函數(shù)運(yùn)算,例如絕對(duì)值、最大值、最小值、對(duì)浮點(diǎn)數(shù)四舍五入、求和等等。例如:
1.abs()函數(shù)求數(shù)值的絕對(duì)值;
2.max()函數(shù)求最大值;
3.min()函數(shù)求最小值;
4.divmod()函數(shù)求兩個(gè)數(shù)的商和余數(shù);
5.round()函數(shù)對(duì)浮點(diǎn)數(shù)四舍五入取值;
6.pow()函數(shù)可以計(jì)算兩個(gè)數(shù)值的冪運(yùn)算,或者三個(gè)數(shù)值中前兩個(gè)數(shù)值的冪運(yùn)算對(duì)第三個(gè)數(shù)值求余數(shù);
7.sum()函數(shù)迭代計(jì)算每個(gè)對(duì)象求和;需要注意括號(hào)的使用
對(duì)于更加復(fù)雜的數(shù)學(xué)運(yùn)算,Python封裝了一個(gè)功能豐富的包:math
對(duì)此羅列了一些常用的數(shù)學(xué)公式,如下表:
函數(shù) |
含義 |
ceil(x) |
大于或等于 x 的整數(shù) |
sin(x) |
x 的正弦 |
cos(x) |
x 的余弦 |
tan(x) |
x 的正切 |
degrees(x) |
將 x 弧度轉(zhuǎn)換為度數(shù) |
exp(x) |
e 的 x 次方 |
factorial(n) |
計(jì)算 n 的階乘(n!)。n! = 1*2*3…*n, 其中 n 必須是整數(shù) |
log(x) |
以 e 為底的 x 的對(duì)數(shù) |
log(x, b) |
以 b 為底的 x 的對(duì)數(shù) |
pow(x, y) |
x 的 y 次方 |
sqrt(x) |
x 的平方根 |
radians(x) |
將 x 度轉(zhuǎn)換為弧度數(shù) |
接下看一些示例,注意要先導(dǎo)入math包,使用命令:import math。當(dāng)然,導(dǎo)入工具庫(kù)的還可以使用另外的命令,如:from math import ceil(導(dǎo)入特定函數(shù)),這取決與你的代碼需要什么樣的功能。
2 簡(jiǎn)單的字符串處理
2.1 字符串標(biāo)識(shí)
除了數(shù)字處理,Python還提供了強(qiáng)大的字符串解析功能。需要知道,在日常程序編寫(xiě)過(guò)程中,字符串也是我們無(wú)法避免需要處理的任務(wù)。字符串—被引號(hào)所引起來(lái)的內(nèi)容!例如:"12345"、"my name"、"more 123"等等,包括了數(shù)字、字母、標(biāo)點(diǎn)符號(hào)以及很多特殊的符號(hào)。
在Python中,主要使用以下三種方式表示字符串
1.單引號(hào)-' ':如'helloworld'、'你好';2.雙引號(hào)-" ":如"helloworld"、"verygood";3.三引號(hào)-''' ''':如'''ni hao ma wo ting hao de ni ne ''' 內(nèi)容可以是多行字符串
所以在編寫(xiě)程序時(shí),為了減少輸入量,更偏向于使用單引號(hào)來(lái)標(biāo)識(shí)字符串。但在需要使用多行的字符串時(shí),使用三引號(hào)是更好的選擇。?
2.2 字符串長(zhǎng)度
在編程中,需要確定一段字符串的長(zhǎng)度時(shí),肯定不能靠肉眼去數(shù)的。在Python中,提供了len函數(shù)來(lái)查看一個(gè)字符串的長(zhǎng)度。如 :
可以看到,Python對(duì)輸入端對(duì)其的格式是十分嚴(yán)格的,在標(biāo)紅報(bào)錯(cuò)的那點(diǎn),筆者僅僅是多敲了一個(gè)空格,所以要多多注意哦!我們還可以在使用整數(shù)的地方用len()函數(shù)進(jìn)行整數(shù)計(jì)算。
2.3 字符串的簡(jiǎn)單拼接
對(duì)字符串的簡(jiǎn)單拼接可以理解為將字符串進(jìn)行相加來(lái)創(chuàng)建新的字符串,如以下幾個(gè)例子:
假如需要將同一個(gè)字符串拼接數(shù)次,那我們可以這樣做
3 類型轉(zhuǎn)換
在代碼編寫(xiě)中,不同字段類型之間的轉(zhuǎn)換是程序員們經(jīng)常遇到的任務(wù)。對(duì)于這類任務(wù)的實(shí)現(xiàn),也提供了非常便捷好用的內(nèi)置函數(shù)!
1. 整數(shù)和字符串轉(zhuǎn)換為浮點(diǎn)數(shù):float()函數(shù),當(dāng)然這里的字符串指引號(hào)內(nèi)為數(shù)字的字符串;
2. 將整數(shù)和浮點(diǎn)數(shù)轉(zhuǎn)換為字符串 :str()函數(shù);
3. 將浮點(diǎn)數(shù)轉(zhuǎn)換為整數(shù) :int()、round()函數(shù);
4. 將字符串轉(zhuǎn)換為數(shù)字 ,int()或者float()函數(shù);需要注意的是,int()函數(shù)是對(duì)整數(shù)字符串進(jìn)行轉(zhuǎn)換的函數(shù);
在日常的學(xué)習(xí)、工作中,使用int(x)、 float(x)和round(x)就能滿足數(shù)值轉(zhuǎn)換需求。但也有些需求為了處理更具體的轉(zhuǎn)換,math()函數(shù)提供了很多將小數(shù)部分刪除的函數(shù):math.trunc()、math.ceil()和math. floor()。有興趣的可以結(jié)合文檔自己嘗試嘗試。
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Python中的魔術(shù)方法Magic?Methods使用實(shí)例全面指南
在Python中,魔術(shù)方法Magic?Methods是一種特殊的方法,它們以雙下劃線開(kāi)頭和結(jié)尾,如__init__、__str__等,這些方法允許定制類的行為,使得對(duì)象更具有靈活性和可定制性,本文將深入探討Python中一些常用的魔術(shù)方法,以及如何使用它們來(lái)定制類與對(duì)象2024-01-01Python實(shí)現(xiàn)從訂閱源下載圖片的方法
這篇文章主要介紹了Python實(shí)現(xiàn)從訂閱源下載圖片的方法,涉及Python采集的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03Python?matplotlib實(shí)戰(zhàn)之散點(diǎn)圖繪制
散點(diǎn)圖,又名點(diǎn)圖、散布圖、X-Y圖,是將所有的數(shù)據(jù)以點(diǎn)的形式展現(xiàn)在平面直角坐標(biāo)系上的統(tǒng)計(jì)圖表,本文主要為大家介紹了如何使用Matplotlib繪制散點(diǎn)圖,需要的可以參考下2023-08-08Python編程pytorch深度卷積神經(jīng)網(wǎng)絡(luò)AlexNet詳解
AlexNet和LeNet的架構(gòu)非常相似。這里我們提供了一個(gè)稍微精簡(jiǎn)版本的AlexNet,去除了當(dāng)年需要兩個(gè)小型GPU同時(shí)運(yùn)算的設(shè)計(jì)特點(diǎn)2021-10-10Python實(shí)現(xiàn)批量將圖像png格式轉(zhuǎn)為npy格式
在進(jìn)行深度學(xué)習(xí)處理時(shí),有些的代碼處理的數(shù)據(jù)格式為npy,但是常常有的數(shù)據(jù)格式為png,因此本文就來(lái)介紹一下Python如何實(shí)現(xiàn)圖像批量png格式轉(zhuǎn)為npy格式,需要的可以參考下2023-12-12Numpy中ndim、shape、dtype、astype的用法詳解
這篇文章主要介紹了Numpy中ndim、shape、dtype、astype的用法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06Python編程ContextManager上下文管理器講解
這篇文章主要介紹了Python編程中對(duì)Context Manager上下文管理器的詳解說(shuō)明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-09-09