溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中mod的使用方法

發(fā)布時間:2020-06-23 20:59:51 來源:億速云 閱讀:13986 作者:元一 欄目:編程語言

這期內(nèi)容當中小編將會給大家?guī)碛嘘Ppython中mod的使用方法,以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

mod是取模運算符,該函數(shù)的用法 :在除數(shù)不為零時,若被除數(shù)為負數(shù)則結果為負數(shù)或零,若被除數(shù)小于除數(shù)則結果為被除數(shù)。除數(shù)的符號則沒有影響。

函數(shù)功能:在FreeMat、MATLAB中,該函數(shù)用于進行取模(取余)運算。在matlab的命令窗口中輸入help mod或者doc mod可以獲得該函數(shù)的幫助信息。

語法格式:

M = mod(X,Y)

返回X對Y取模運算的結果。這里X可以是一個數(shù)組。

其中,比較特殊的情況有:

mod(X,0):結果為X

mod(X,X):結果為0

mod(X,Y):如果X不等于Y且Y不為0,則結果的符號與Y的符號一致。

rem函數(shù)也用于取模運算,二者不同之處在于:

rem(X,Y):如果X不等于Y且Y不為0,則結果的符號與X的符號一致。

如果X、Y符號一致,則mod(X,Y)和rem(X,Y)結果相等。

mod函數(shù)可以判斷兩個數(shù)是否是同余關系(congruence relationships):當且

僅當mod(x,m) == mod(y,m),則x、y是同余關系。

相關函數(shù):rem

通常情況下取模運算(mod)和求余(rem)運算被混為一談,因為在大多數(shù)的編程語言里,都用'%'符號表示取?;蛘咔笥噙\算。在這里要提醒大家要十分注意當前環(huán)境下'%'運算符的具體意義,因為在有負數(shù)存在的情況下,兩者的結果是不一樣的。

對于整型數(shù)a,b來說,取模運算或者求余運算的方法都是:

1.求整數(shù)商: c = a/b;

2.計算?;蛘邤?shù): r = a - c*b.

求模運算和求余運算在第一步不同:求余運算在取c的值時,向0方向舍入(fix()函數(shù)); 而取模運算在計算c的值時,向負無窮大方向舍入(floor()函數(shù))。

因此,當a和b符號一致時,求模運算和求余運算所得的c的值一致,因此結果一致。但是當符號不一致的時候,結果不一樣。求模運算結果的符號和b一致,求余運算結果的符號和a一致。

在C語言中,%符號表示的是求余運算,在python腳本中,%表示的是取模。

(通常取模運算中b不允許是負數(shù),但是在python 2.5.1里可以在%后面跟負數(shù),因為python語言中除法的結果是向0舍入,因此計算結果是取模!)

(1)a,b同號時,結果等同于取余運算,即r = a-a/b;

結果規(guī)律:

同正為正,同負為負。

例:

1 % 2 == 1;-1 % -2 == -1.

(2)a,b異號時,

①取余運算,ren(5,-3)

c = fix(a/b); // c = -1
r = a-b*c; // r = 2

②取模運算,mod(5,-3)

c = floor(a/b);//c=-2
r = a-b*c; //r = -1

結果規(guī)律:

當 a > b 時,a % b == 1 or 0;
當 a < b 時,a % b == -1 or 0;

上述就是小編為大家分享的python中mod的使用方法了,如果您也有類似的疑惑,不妨參照上述方法進行嘗試。如果想了解更多相關內(nèi)容,請關注億速云行業(yè)資訊。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI