python3數字類型分為_Python初學3——數字類型及操作

一、數

1.1 整數類型( 十、二、八、十六進制 )

python中整數類型與數學中的整數概念一致,有正有負,取值任意。

整數的表示形式:

整數類型表示形式舉例十進制34,163,210

二進制0b1101 或 0B1101

八進制0o357 或 0O357

十六進制0x45ac 或 0X45ac

1.2 浮點數類型( round()、科學計數法表示 )

python中浮點數即指帶有小數點和小數的數字,浮點數取值范圍(-10308至10308)和小數精度(10-16)都存在限制(這些限制對于常規運算可以忽略)。

浮點數間運算存在不確定尾數,這不是bug。

原因在于計算機中是以有限位數的二進制表示小數的,二者可以無限接近但不完全相同,這就使得計算機以二進制形式計算小數運算時存在了誤差,在輸出時計算機再截取一定的小數位數輸出,就可能產生尾數。python中不確定尾數一般發生在10-16左右。

例如:

43cc88b01a2eb18d073f27e34a904612.png

圖1-1 浮點數間運算的不確定尾數

圖1-1中,(0.1 + 0.2) 和 (0.11 + 1.32) 的結果不等于正確結果的情況即為出現不確定尾數。

rang()函數輔助解決不確定尾數問題 round(x, d)對x四舍五入,d是小數截取位數

be85d75e2b592e43af3f556f6cc571a9.png

圖1-2 round()函數四舍五入

浮點數的科學計數法表示形式

科學計數法表示使用字母e或E作為冪的符號,以10為基數,格式如下:

浮點數科學計數法表示形式0.6356.35e-1

51.064155.106415E1

-0.413-4.13E-1

-165.333-1.65333e2

1.3 復數類型( 多用于空間變換或復變函數相關,虛實部的獲取 )

在數學中,a + bj被稱為復數,其中a是實部,b是虛部,j是復數單位。

在python中,復數與數學中的復數相同。

.real獲得復數的實部

.imag獲得復數的虛部

例如:

6265c7815c8ca94ffb069b86128b9e5b.png

圖1-3 python中的復數即獲取虛實部

二、數值運算操作符( 加、減、乘、除、模、冪、整數除、取相反數 )

2.1 常用操作符

操作符及使用說明x + y加,求x與y的和

x - y減,求x與y的差

x * y乘,求x與y的積

x / y除,求x與y的商(浮點數結果)。10 / 3 結果為3.3333333333333335

x // y整數除,求x與y的商(整數結果)。10 // 3 結果為3

+ x表示x本身

- x取x的相反數

x % y模運算,求x除y的余數。10 % 3 結果為1

x ** y冪運算,求 xy。9 ** 0.5 結果為3.0

2.2 增強賦值操作符

增強賦值操作符及使用說明x += y與 x = x + y 等價

x -= y與 x = x - y 等價

x *= y與 x = x * y 等價

x /=y與 x = x / y 等價

x //= y與 x = x // y 等價

x %= y與 x = x % y 等價

x **= y與 x = x ** y 等價

三、數值運算函數( abs()、divmod()、pow()、round()、max()、min()、int()、float()、complex() )

數值運算函數及使用說明abs(x)絕對值函數,求x的絕對值

divmod(x, y)商余函數,同時求 x // y 和 x % y 。divmod(10, 3) 結果為(3, 1)

pow(x, y[, z])冪余函數,求 (x ** y)%z 。z省略則代表求 xy

round(x[, d])四舍五入函數,對 x 四舍五入,d 是保留的小數位數。d 省略則代表對 x 四舍五入取整

max(x1, x2, x3, …, xn)最大值函數,求 x1, x2, x3, …, xn 中的最大值,n 不限

min(x1, x2, x3, …, xn)最小值函數,求 x1, x2, x3, …, xn 中的最小值,n 不限

int(x)取整函數,直接舍棄x的小數部分。int(123.123) 結果為123,int(“123”) 結果為123

float(x)取浮點函數,為x添加小數部分。float(123) 結果為123.0,float(“1.23”) 結果為1.23

complex(x)取復數函數,為x添加虛數部分。complex(123) 結果為 123 + 0j

四、天天向上實例

1.1 實例1

# 每天進步1%。

dayup = pow(1.001, 365)

# 每天退步1%。

daydown = pow(0.999, 365)

print("向上:{:.2f},向下:{:.2f}".format(dayup, daydown))

1.1 實例2

dayfactor = 0.001# 定義每天進步的參數

# 每天進步1%。

dayup = pow(1 + dayfactor, 365)

# 每天退步1%。

daydown = pow(1 - dayfactor, 365)

print("向上:{:.2f},向下:{:.2f}".format(dayup, daydown))

1.1 實例3

'''''''''''''''''''''''''''''''

一年365天中,工作日每天進步1%

周六日每天退步1%

'''''''''''''''''''''''''''''''

dayup = 1.0# 定義初始進步

dayfactor = 0.01# 定義每天進步的參數

# 進行365天循環,i = 0, 1, 2, ..., 364

for i in range(365):

if i % 7 in [6, 0]:# 周六日退步1%

dayup *= (1 - dayfactor)

else:# 工作日進步1%

dayup *= (1 + dayfactor)

print("工作日的力量:{:.2f}".format(dayup))

1.1 實例4

小明:一年365天,每天進步1%,不停歇

玲玲:一年365天,每周工作5天休息2天,休息日每日退步1%,那玲玲在工作日平均每天要進步多少,最后才能和小明的進步相當呢?

流程圖如下:

Created with Rapha?l 2.2.0

開始

計算小明365天進步結果M

假設玲玲工作日平均每天進步1%

計算玲玲365天進步結果N

N≥M嗎?

輸出x

結束

x增加千分之一

yes

no

# 計算小明365天的進步量

Ming_dayup = pow(1.01, 365)

''' @brief 用于計算玲玲365天的進步量

'' @param df: 玲玲工作日平均每天進步的參數

'' @retval 玲玲365天的進步量

'''

def Ling_dayup(df):

dayup = 1# 定義玲玲的初始進步

# 進行365天循環,i = 0, 1, 2, ..., 364

for i in range(365):

if i % 7 in [6, 0]:# 玲玲一周內2天退步1%

dayup *= (1 - 0.01)

else:# 玲玲一周內5天進步df

dayup *= (1 + df)

return dayup# 函數返回玲玲365天的進步量

'''''''''''' 主程序 ''''''''''''

Ling_dayfactor = 0.01# 假設玲玲工作日平均每天進步1%

while Ling_dayup(Ling_dayfactor) < Ming_dayup:# while循環判斷,直到玲玲最后的進步量不小于小明的進步的時候,結束循環

Ling_dayfactor += 0.001

print("玲玲工作日每天應平均進步{:.3f}".format(Ling_dayfactor))

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537936.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537936.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537936.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

idea 2018.1 創建springboot開啟找回Run Dashboard

原文連接&#xff1a;https://www.cnblogs.com/yangtianle/p/8818255.html ---------------------------------------------------------------------------------配置方法首先找到項目中.idea文件下的workspace.xml開打接下來找到<component name"RunDashboard"&…

wepack構建工具

神TMc css重要性 程序猿 感嘆

php獲取藍湊云文件列表,php調用藍奏云下載接口

/*** package Lanzou* author Filmy* version 1.2.1* link https://mlooc.cn*/header(Access-Control-Allow-Origin:*);header(Content-Type:application/json; charsetutf-8);$url isset($_GET[url]) ? $_GET[url] : "";$pwd isset($_GET[pwd]) ? $_GET[pwd] : …

微信支付-服務端-bug排查記錄

微信支付服務端需要對微信官方的統一下單接口發送請求獲取prepayId作為app端調用支付的憑證&#xff0c;如果返回簽名錯誤&#xff0c;首先排查代碼層面的錯誤。 方法&#xff1a;使用微信官方的簽名算法檢驗。 地址&#xff1a;https://pay.weixin.qq.com/wiki/doc/api/jsapi.…

.Net Core+mySqlSugar的一些稍復雜操作

介紹一些我嘗試的mysqlSugar的數據庫操作 修改密碼 var status db.Update<Users>(new { password user.password }, it > it.username user.username); 更新數據&#xff08;防止空值一起更新&#xff09; 首先封裝一個函數&#xff08;判斷是否為空或者數值為0&a…

nginx一個server多個servername

nginx server_name 多個的話&#xff0c;空格隔開就行

php根據漢字首字母分組,利用PHP獲取漢字首字母并且分組排序詳解

前言本文主要給大家介紹了關于PHP獲取漢字首字母并分組排序的相關內容&#xff0c;因經常我們在做項目的時候&#xff0c;會有按首字母排序的需求 比如&#xff1a; 美團的城市選擇 http://www.meituan.com/index/changecity/initiative app中按字母搜索正題網上找了各種&#…

[算法總結] 13 道題搞定 BAT 面試——字符串

本文首發于我的個人博客&#xff1a;尾尾部落 1. KMP 算法 談到字符串問題&#xff0c;不得不提的就是 KMP 算法&#xff0c;它是用來解決字符串查找的問題&#xff0c;可以在一個字符串&#xff08;S&#xff09;中查找一個子串&#xff08;W&#xff09;出現的位置。KMP 算法…

Sqlserver備份存儲過程

查了網上找不到快速備份Sqlserver存儲過程的方法&#xff0c;心里想&#xff0c;如果Sqlserver不自帶這個功能&#xff0c;真是太low了。步驟1&#xff1a;打開存儲過程文件夾步驟2&#xff1a;按 F7 鍵&#xff0c;打開“對象資源管理器詳細信息”窗口步驟3&#xff1a;點擊“…

仿拉鉤app(一)---爬蟲數據準備

工欲善其事必先利其器&#xff0c;準備做一個拉鉤的app&#xff0c;但是沒數據可怎么辦&#xff0c;那就直接扒褲衩去爬吧 一般爬蟲的思路為&#xff1a; 分析頁面結構是否有接口模仿請求&#xff08;解決反爬的各種方式&#xff09;解析數據存儲數據按照以上的思路&#xff0c…

小哼買書JAVA編寫,04_小哼買書

現在來看一個具體的例子“小哼買書”(根據全國青少年信息學奧林匹克聯賽 NOIP2006 普及組第一題改編),來實踐一下 章所學的三種排序算法。Paste_Image.png小哼的學校要建立一個圖書角,老師派小哼去找一些同學做調查,看看同學們都喜歡讀哪些書。小哼讓每個同學寫出一個自己最想讀…

[Err] 22007 - [SQL Server]從 nvarchar 數據類型到 datetime 數據類型的轉換產生一個超出范圍的值。

報錯語句&#xff1a; cast(Replace(Replace(P.DeliverDate,.,-),/,-) as datetime)改為 cast(Replace(Replace(P.DeliverDate,.,-),/,-) as datetime2)使用 datetime2 代替 datetime

linux Postfix + dovecot + extmail + extman + mysql

配置環境&#xff1a;RHEL5.5 i386DNS MX[rootstation40 ~]# host -t MX tianyun.comtianyun.com mail is handled by 10 mail.tianyun.com.[rootstation40 ~]# [rootstation40 ~]# ping mail.tianyun.comPING mail.tianyun.com (192.168.0.2) 56(84) bytes of data.64 bytes f…

php 接口安全解決方案,php接口數據安全解決方案(一)

前言目的&#xff1a;1.實現前后端代碼分離&#xff0c;分布式部署2.利用token替代session實現狀態保持&#xff0c;token是有時效性的滿足退出登錄&#xff0c;token存入redis可以解決不同服務器之間session不同步的問題&#xff0c;滿足分布式部署3.利用sign&#xff0c;前端…

Teamview連接Windows server問題

場景&#xff1a; 服務器在集團總部杭州&#xff0c;網管在集團寧波分公司&#xff0c;連接服務器通過內網遠程桌面。過程&#xff1a; 網管給了tv的賬號&#xff0c;密碼。連接的時候一直連不上去。卡在“正在初始化連接參數”。后來網管不信&#xff0c;遠程桌面了下&#xf…

nginx An attempt was made to access a socket in a way forbidden by its access permissions

在安裝了 sqlserver2008 的win7 與 win2008 上啟動 nginx&#xff0c;綁定80端口&#xff0c;報錯&#xff1a; nginx An attempt was made to access a socket in a way forbidden by its access permissions查了百度&#xff0c;說修改注冊表&#xff0c;但我的電腦上找不到文…

php codesniffer 代碼規范,規范三:PHP_CodeSniffer 輔佐代碼規范

>也可以參考此文&#xff1a;https://www.cnblogs.com/huangbx/p/php_codesniffer.html[TOC]我用的是wamp&#xff0c;環境是php7.0.23# (一)下載 pear打開http://pear.php.net/go-pear.phar&#xff0c;會顯示代碼&#xff0c;不用管他&#xff0c;直接copys復制到本地&…

php的cms是什么意思,phpcms是什么系統

什么是phpcms&#xff1f;Phpcms 是國內領先的網站內容管理系統&#xff0c;同時也是一個開源的PHP開發框架。Phpcms由內容模型、會員、問吧、專題、財務、訂單、廣告、郵件訂閱、 短消息、自定義表單、全站搜索等20多個功能模塊組成&#xff0c;內置新聞、圖片、下載、信息、產…

【python】 time模塊和datetime模塊詳解 【轉】

一、time模塊 time模塊中時間表現的格式主要有三種&#xff1a; a、timestamp時間戳&#xff0c;時間戳表示的是從1970年1月1日00:00:00開始按秒計算的偏移量 b、struct_time時間元組&#xff0c;共有九個元素組。 c、format time 格式化時間&#xff0c;已格式化的結構使時間更…

spring boot Exception in Thread “main” java.lang.classNoFoundException

在客戶測試環境部署&#xff0c;通過打包成jar&#xff0c;使用命令 nohup java -jar /usr/local/tomcat/shirencai/ct-peixun-provider.jar –spring.profiles.activestage > /usr/local/tomcat/shirencai/ct-peixun-provider-temp.txt & 報錯后來排查以為是內存不夠。…