




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第3章 基本數(shù)據(jù)類型數(shù)字類型數(shù)字類型Python語言包括三種數(shù)字類型整數(shù)類型浮點數(shù)類型復數(shù)類型整數(shù)類型 與數(shù)學中的整數(shù)概念一致,沒有取值范圍限制 C+ :short、 int、 long 等 pow(x, y)函數(shù):help(pow), 計算xy 打開IDLE 程序1:pow(2,10) , pow(2,15) 程序2:pow(2, 1000) 程序3:pow(2, pow(2,15)整數(shù)類型與數(shù)學中整數(shù)的概念一致與數(shù)學中整數(shù)的概念一致- 可正可負,沒有取值范圍限制可正可負,沒有取值范圍限制- pow(x,y)函數(shù):計算函數(shù):計算 xy,想算多大算多大想算多大算多大 pow(2,100)126
2、7650600228229401496703205376 pow(2,pow(2,15)1415461031044954789001553整數(shù)類型4種進制表示形式種進制表示形式- 十進制:十進制:1010, 99, -217- 二進制,以二進制,以0b或或0B開頭開頭:0b010, -0B101- 八進制,以八進制,以0o或或0O開頭開頭:0o123, -0O456- 十六進制,以十六進制,以0 x或或0X開頭開頭:0 x9a, -0X89整數(shù)類型 示例 1010, 99, -217 0 x9a, -0X89(0 x, 0X開頭表示16進制數(shù)) 0b010, -0B101 (0b, 0B開頭表
3、示2進制數(shù)) 0o123, -0O456 (0o, 0O開頭表示8進制數(shù))關于關于Python整數(shù),就需要知道這些。整數(shù),就需要知道這些。整數(shù)無限制整數(shù)無限制pow()4種進制表示形式種進制表示形式浮點數(shù)類型帶有小數(shù)點及小數(shù)的數(shù)字Python語言中浮點數(shù)的數(shù)值范圍存在限 制,小數(shù)精度也存在限制,但常規(guī)計算可忽略,取值范圍數(shù)量級約-10308至10308,精度數(shù)量級10-16。這種限制與在不同計算機系統(tǒng)有關浮點數(shù)類型浮點數(shù)類型 示例0.0, -77., -2.1796e4, 4.3e-3, 9.6E5(科學計數(shù)法)科學計數(shù)法使用字母“e”或者“E”作為冪 的符號,以10為基數(shù)。浮點數(shù)類型浮點數(shù)間
4、運算存在不確定尾數(shù)浮點數(shù)間運算存在不確定尾數(shù) 0.1 + 0.2 = 0.3False round(0.1+0.2, 1) = 0.3True不是 Bug計算機數(shù)據(jù)運算的內(nèi)部原理:計算機數(shù)據(jù)運算的內(nèi)部原理: 二進制和十進制見不是完全對等二進制和十進制見不是完全對等浮點數(shù)類型浮點數(shù)間運算存在不確定尾數(shù)浮點數(shù)間運算存在不確定尾數(shù)浮點數(shù)類型浮點數(shù)間運算存在不確定尾數(shù)浮點數(shù)間運算存在不確定尾數(shù)- round(x, d):對:對x四舍五入,四舍五入,d是小數(shù)截取位數(shù)是小數(shù)截取位數(shù)- 浮點數(shù)間運算及比較用浮點數(shù)間運算及比較用round()函數(shù)輔助函數(shù)輔助- 不確定尾數(shù)一般發(fā)生在不確定尾數(shù)一般發(fā)生在10-1
5、6左右左右,round()十分有效十分有效浮點數(shù)類型浮點數(shù)可以采用科學計數(shù)法表示浮點數(shù)可以采用科學計數(shù)法表示- 使用字母使用字母e或或E作為冪的符號,以作為冪的符號,以10為基數(shù),格式如下:為基數(shù),格式如下:e- 例如例如:4.3e-3 值為值為0.0043表示表示 a*10b9.6E5 值為值為960000.0關于關于Python浮點數(shù),需要知道多些。浮點數(shù),需要知道多些。取值范圍和精度取值范圍和精度基本基本無限制無限制運算存在不確定尾運算存在不確定尾數(shù)數(shù) round()科學計數(shù)法表示科學計數(shù)法表示復數(shù)類型與數(shù)學中的復數(shù)概念一致: z = a + bj, a是實數(shù)部分,b是虛數(shù)部分,a和b都
6、是浮點類型,虛數(shù)部分用j或者J標識示例:12.3+4j,-5.6+7j復數(shù)類型 z = 1.23e-4+5.6e+89j(實部和虛部是什么?) 對于復數(shù)z , 可以用z.real 獲得實數(shù)部分,z.imag獲得虛數(shù)部分 z.real = 0.000123z.imag = 5.6e+89該出手時該出手時就出手就出手數(shù)字類型的操作內(nèi)置的數(shù)值運算操作符操作符操作符描述描述x + yx與與y之和之和x - yx與與y之差之差x * yx與與y之積之積x / yx與與y之商之商10/3結(jié)果是結(jié)果是3.3333333333333335x / yx與與y之整數(shù)商,即:之整數(shù)商,即:不不大大于于x與與y之之商
7、商的最的最大大整數(shù)整數(shù) 10/3結(jié)果是結(jié)果是3x % yx與與y之商的余數(shù),也之商的余數(shù),也稱稱為模為模運運算算,模運算模運算10%3結(jié)果是結(jié)果是1-xx的負值,即:的負值,即:x*(-1)+xx本身本身x*yx的的y次冪,即次冪,即:xy當當y是小數(shù)時,開方運算是小數(shù)時,開方運算10*0.5結(jié)果是結(jié)果是P67課本課本二元操作符有對應的增強賦值操作二元操作符有對應的增強賦值操作符符增強操作符及增強操作符及使用使用描述描述即x = x op y,其中,op為二元操作符x += y x -= y x *= y x /= yx op= yx /= y x %= yx *= y x = 3.1415
8、x *= 3# 與與 x = x *3 等等 價價31.006276662836743內(nèi)置的數(shù)值運算操作符 三種類型存在一種逐漸“擴展”的關系: 整數(shù) - 浮點數(shù) - 復數(shù)(整數(shù)是浮點數(shù)特例,浮點數(shù)是復數(shù)特例)不同數(shù)字類型之間可以進行混合運算,運算后生 成結(jié)果為最寬類型 123 + 4.0 = 127.0 (整數(shù) + 浮點數(shù) = 浮點數(shù))內(nèi)置的數(shù)值運算操作符數(shù)字類型之間相互運算所生成的結(jié)果是“更寬”的類 型,基本規(guī)則是:整數(shù)之間運算,如果數(shù)學意義上的結(jié)果是小數(shù),結(jié) 果是浮點數(shù);整數(shù)之間運算,如果數(shù)學意義上的結(jié)果是整數(shù),結(jié) 果是整數(shù);整數(shù)和浮點數(shù)混合運算,輸出結(jié)果是浮點數(shù);整數(shù)或浮點數(shù)與復數(shù)運算
9、,輸出結(jié)果是復數(shù)。內(nèi)置的數(shù)值運算函數(shù)Python解釋器提供了一些內(nèi)置函數(shù),在這些內(nèi)置函 數(shù)之中,有6個函數(shù)與數(shù)值運算相關函數(shù)描述abs(x)x的絕對值abs(-10.01) 結(jié)果為 10.01divmod(x, y)(x/y, x%y),輸出為二元組形式(也稱為元組類型)divmod(10, 3) 結(jié)果為 (3, 1)pow(x, y, z)(x*y)%z,.表示該參數(shù)可以省略,即:pow(x,y),它與x*y相同pow(3, pow(3, 99), 10000) 結(jié)果為 4587round(x, ndigits)對x四舍五入,保留ndigits位小數(shù)。round(x)返回四舍五入的整數(shù)值ro
10、und(-10.123, 2) 結(jié)果為 -10.12max(x1, x2, , xn)x1, x2, , xn的最大值,n沒有限定max(1, 9, 5, 4 3) 結(jié)果為 9min(x1, x2, , xn)x1, x2, , xn的最小值,n沒有限定min(1, 9, 5, 4 3) 結(jié)果為 1P68中間中間例子例子課本課本P68數(shù)字類型的轉(zhuǎn)換數(shù)值運算操作符可以隱式地轉(zhuǎn)換輸出結(jié)果的數(shù)字類型例如,兩個整數(shù)采用運算符“/”的除法將可能輸出浮點數(shù)結(jié)果。 此外,通過內(nèi)置的數(shù)字類型轉(zhuǎn)換函數(shù)可以顯式地在數(shù)字類型之間進 行轉(zhuǎn)換數(shù)字類型的轉(zhuǎn)換 示例:complex(4.5) = 4.5 + 0J數(shù)字類型的
11、判斷函數(shù):type(x),返回x的類型,適用于所有類型 的判斷 示例:math庫的使用math庫概述 math庫是Python提供的內(nèi)置數(shù)學類標準庫 math庫不支持復數(shù)類型 math庫一共提供了4個數(shù)學常數(shù)和44個函數(shù)。44個函數(shù)共分為4類,包括:16個數(shù)值表示函數(shù)、8個 冪對數(shù)函數(shù)、16個三角對數(shù)函數(shù)和4個高等特殊函數(shù)math庫概述首先使用保留字import引用該庫 第一種:import math對math庫中函數(shù)采用math.()形式使用 第二種,from math import 對math庫中函數(shù)可以直接采用()形式使用import mathmath.ceil(10.2)11from
12、math import floorfloor(10.2)10math庫解析 math庫包括4個數(shù)學常數(shù)常數(shù)數(shù)學表示描述math.pi圓周率,值為3.141592653589793math.ee自然對數(shù),值為2.718281828459045math.inf正無窮大,負無窮大為-math.infmath.nan非浮點數(shù)標記,NaN(Not a Number)math庫解析 math庫包括16個數(shù)值表示函數(shù)函數(shù)數(shù)學表示描述math.fabs(x)返回x的絕對值math.fmod(x, y)x % y返回x與y的模math.fsum(x,y,)x+y+浮點數(shù)精確求和math.ceil(x)向上取整,
13、返回不小于x的最小整數(shù)math.floor(x)向下取證,返回不大于x的最大整數(shù)math.factorial(x)x!返回x的階乘,如果x是小數(shù)或負數(shù),返回ValueErrormath.gcd(a, b)返回a與b的最大公約數(shù)math.frepx(x)x = m * 2e返回(m, e),當x=0,返回(0.0, 0)math.ldexp(x, i)x * 2i返回x * 2i運算值,math.frepx(x)函數(shù)的反運算math.modf(x)返回x的小數(shù)和整數(shù)部分math.trunc(x)返回x的整數(shù)部分math.copysign(x, y)用數(shù)值y的正負號替換數(shù)值x的正負號math.is
14、close(a,b)比較a和b的相似性,返回True或Falsemath.isfinite(x)當x為無窮大,返回True;否則,返回Falsemath.isinf(x)當x為正數(shù)或負數(shù)無窮大,返回True;否則,返回Falsemath.isnan(x)當x是NaN,返回True;否則,返回Falsemath庫解析 math庫中包括8個冪對數(shù)函數(shù)函數(shù)數(shù)學表示描述math.pow(x,y)xy返回x的y次冪math.exp(x)ex返回e的x次冪,e是自然對數(shù)math.expml(x)ex-1返回e的x次冪減1math.sqrt(x)返回x的平方根math.log(x,base)math.log
15、1p(x)返回1+x的自然對數(shù)值math.log2(x)返回x的2對數(shù)值math.log10(x)返回x的10對數(shù)值math庫解析 math庫包括六個“三角雙曲函數(shù)函數(shù)數(shù)學表示描述math.degree(x)角度x的弧度值轉(zhuǎn)角度值math.radians(x)角度x的角度值轉(zhuǎn)弧度值math.hypot(x,y)返回(x,y)坐標到原點(0,0)的距離math.sin(x)sin x返回x的正弦函數(shù)值,x是弧度值math.cos(x)cos x返回x的余弦函數(shù)值,x是弧度值math.tan(x)tan x返回x的正切函數(shù)值,x是弧度值math.asin(x)arcsin x返回x的反正弦函數(shù)值,
16、x是弧度值math.acos(x)arccos x返回x的反余弦函數(shù)值,x是弧度值math.atan(x)arctan x返回x的反正切函數(shù)值,x是弧度值math.atan2(y,x)arctan y/x返回y/x的反正切函數(shù)值,x是弧度值math.sinh(x)sinh x返回x的雙曲正弦函數(shù)值math.cosh(x)cosh x返回x的雙曲余弦函數(shù)值math.tanh(x)tanh x返回x的雙曲正切函數(shù)值math.asinh(x)arcsinh x返回x的反雙曲正弦函數(shù)值math.acosh(x)arccosh x返回x的反雙曲余弦函數(shù)值math.atanh(x)arctanh x返回x
17、的反雙曲正切函數(shù)值math庫解析 math庫包括4個高等特殊函數(shù)函數(shù)數(shù)學表示描述math.erf(x)高斯誤差函數(shù),應用于概率論、統(tǒng)計學等領域math.erfc(x)余補高斯誤差函數(shù),math.erfc(x)=1 - math.erf(x)math.gamma(x)伽瑪(Gamma)函數(shù),也叫歐拉第二積分函數(shù)math.lgamma(x)ln(gamma(x)伽瑪函數(shù)的自然對數(shù)實例3: 天天向上的力量天天向上的力量問題分析天天向上的力量基本問題:持續(xù)的價值基本問題:持續(xù)的價值- 一一年年365天,每天進步天,每天進步1%,累計進步多少呢?累計進步多少呢?1.01365- 一年一年365天,每天退
18、步天,每天退步1%,累計剩下多少呢?累計剩下多少呢?0.99365需求分析天天向上的力量天天向上的力量- 數(shù)學公式可以求解,似乎沒必要用程數(shù)學公式可以求解,似乎沒必要用程序序- 如果是如果是三天打魚兩天曬網(wǎng)三天打魚兩天曬網(wǎng)呢?呢?- 如果是如果是雙休日又不退雙休日又不退步步呢?呢?天天向上的力量第一問天天向上的力量問題問題1: 1的力量的力量- 一一年年365天,每天進步天,每天進步1,累計進步多少呢?,累計進步多少呢?1.001365- 一年一年365天,每天退步天,每天退步1,累計剩下多少呢?,累計剩下多少呢?0.999365天天向上的力量問題問題1: 1的力量的力量#DayDayUpQ1
19、.pydayup = pow(1.001, 365) daydown = pow(0.999, 365)print(向上::.2f,向下::.2f.format(dayup, daydown)編寫上述代碼,并保存為編寫上述代碼,并保存為DayDayUpQ1.py文件文件天天向上的力量問題問題1: 1的力量的力量 (運行結(jié)果運行結(jié)果)向上:向上:1.44,向下:,向下:0.691.001365 = 1.440.999365 = 0.691的力量,接的力量,接近近2倍,不可小覷哦倍,不可小覷哦天天向上的力量第二問天天向上的力量問題問題2: 5和和1%的力量的力量- 一一年年365天,每天進步天,每
20、天進步5或或1%,累計進步多少呢?,累計進步多少呢?1.0053651.01365- 一年一年365天,每天退步天,每天退步5或或1%,累計剩下多少呢?,累計剩下多少呢?0.9953650.99365天天向上的力量#DayDayUpQ2.py dayfactor = 0.005dayup = pow(1+dayfactor, 365) daydown = pow(1-dayfactor, 365)print(向上::.2f,向下::.2f.format(dayup, daydown)編寫上述代碼,并保存為編寫上述代碼,并保存為DayDayUpQ2.py文件文件問題問題2: 5和和1%的力量的力
21、量使用變量的好處:一處修改即使用變量的好處:一處修改即可可天天向上的力量1.005365 = 6.170.995365 = 0.165的力的力量量,驚訝!,驚訝! (5運行結(jié)果運行結(jié)果)向上:向上:6.17,向下,向下:0.16問題問題2: 5和和1%的力量的力量1.01365 = 37.780.99365 = 0.031%的力量,驚人!的力量,驚人! (1%運行結(jié)運行結(jié)果果)向上:向上:37.78,向下,向下:0.03天天向上的力量第三問天天向上的力量問題問題3: 工作日的力量工作日的力量- 一年一年365天,一天,一周周5個工作日,每天進步個工作日,每天進步1%- 一年一年365天,一周天
22、,一周2個休息日,每天退步個休息日,每天退步1%- 這種工作日的力量,如何呢?這種工作日的力量,如何呢?1.01365 (數(shù)學思數(shù)學思維維)for.in. (計算思維計算思維)天天向上的力量#DayDayUpQ3.pydayup = 1.0dayfactor = 0.01for i in range(365):if i % 7 in 6,0:dayup = dayup*(1-dayfactor)else:dayup = dayup*(1+dayfactor)print(工作日的力量::.2f .format(dayup)課本課本P76印刷問題印刷問題天天向上的力量問題問題3: 工作日的力量工作
23、日的力量 (運行結(jié)果運行結(jié)果)工作日的力量工作日的力量:4.631.001365 = 1.441.005365 = 6.171.01365 = 37.78盡管提高盡管提高1%,但介,但介于于1和和5的力量之間的力量之間天天向上的力量第四問天天向上的力量問題問題4: 工作日的努力工作日的努力- 工作日模式要努力到什么水平,才能與每天努工作日模式要努力到什么水平,才能與每天努力力1%一樣?一樣?- A君君: 一年一年365天,每天進天,每天進步步1%,不停歇,不停歇- B君君: 一年一年365天,每周工天,每周工作作5天休天休息息2天,休息日下天,休息日下降降1%,要多努力呢?,要多努力呢?for.in. (計算思維計算思維)def.和while. (笨辦法笨辦法試試錯錯)類似窮舉梯度下降天天向上的力量問題問題4: 工作日的努力工作日的努力B君君(工工作作日日-x%)A君君(365-1%)比較一下比較一下把把x再加點兒再加點兒比不過比不過比上了比上了輸出輸
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 八年級物理:光和眼睛復習-新滬粵版八年級課件
- 七彩童年快樂六一兒童節(jié)活動策劃課件
- 執(zhí)業(yè)藥師考試公式與試題及答案
- 考試架構衛(wèi)生資格考試試題及答案
- 2025年自考行政管理的關鍵試題與答案推介
- 2025年執(zhí)業(yè)藥師考試感染防控試題及答案
- 2025年衛(wèi)生資格考試高效備考指南試題及答案
- 藥師職業(yè)選擇及考試指導試題及答案
- 探索經(jīng)濟法概論考試試題及答案的多樣性
- 2025年衛(wèi)生資格考試自我提升試題及答案
- 建筑工地各工種安全操作規(guī)程
- 2025年南通市中考作文猜題及范文分析
- 食品召回管理辦法培訓
- 四川省遂寧市射洪中學2025屆高三下學期三?;瘜W試題(原卷版+解析版)
- 生物信息學中的序列比對與比對分析-全面剖析
- 2025-2030國內(nèi)干式真空泵行業(yè)市場發(fā)展現(xiàn)狀及競爭格局與投資發(fā)展前景研究報告
- 《關于進一步強化食品安全全鏈條監(jiān)管的意見》解讀學習課件(2025年3月頒發(fā))
- 預防合同詐騙
- 王莊礦5.0Mt-a新井設計 - 厚煤層回采巷道支護技術研究
- 2025年電力電子技術試題及答案
- 2025年安全生產(chǎn)考試題庫(安全知識)安全教育與培訓試題冊
評論
0/150
提交評論