Python科學(xué)計算及應(yīng)用課件:Python科學(xué)計算基礎(chǔ)_第1頁
Python科學(xué)計算及應(yīng)用課件:Python科學(xué)計算基礎(chǔ)_第2頁
Python科學(xué)計算及應(yīng)用課件:Python科學(xué)計算基礎(chǔ)_第3頁
Python科學(xué)計算及應(yīng)用課件:Python科學(xué)計算基礎(chǔ)_第4頁
Python科學(xué)計算及應(yīng)用課件:Python科學(xué)計算基礎(chǔ)_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

Python科學(xué)計算及應(yīng)用

Python科學(xué)計算基礎(chǔ)Python數(shù)字類型2.2運算符2.3Python標(biāo)識符與編碼2.1常用標(biāo)準(zhǔn)庫2.4

Python科學(xué)計算基礎(chǔ)2.1.1標(biāo)識符標(biāo)識符由字母、下劃線和數(shù)字組成,且不能以數(shù)字開頭的符號串。2.1Python標(biāo)識符與編碼合法的標(biāo)識符:UserID

name

mode12

user_age思考:下面哪些是標(biāo)識符?為什么?fromNo12from#12my_Booleanmy-BooleanObj22ndObjmyIntMike2jackMy_tExt_testtest!32haha(da)ttintjack_rosejack&roseG.U.I2.1.2命名規(guī)范

見名知意表示名字就用標(biāo)識符name,表示學(xué)生用標(biāo)識符student等駝峰命名法小駝峰命名法:myName、aDog大駝峰命名法:FirstName、LastName下劃線表示法

用下劃線“_”分隔開,例如my_name,your_Family2.1Python標(biāo)識符與編碼2.1.3關(guān)鍵字通過命令keyword.kwlist查看當(dāng)前系統(tǒng)中的關(guān)鍵字2.1Python標(biāo)識符與編碼2.1.4編碼2.1Python標(biāo)識符與編碼ASCII編碼

AmericanStandardCodeforInformationInterchange一個字節(jié)表示一個ASCII碼,共有256種符號GB2312與GBK

GB2312-1980,收錄6千多個漢字,使用非常普遍。GBK(K表示擴展),可表示2萬多個漢字和圖形符號。Unicode標(biāo)準(zhǔn)碼

統(tǒng)一碼(UniversalMultiple-OctetCodedCharacterSet)常用2字節(jié)表示1個字符(偏僻的字符,就需要4個字節(jié)))UTF-8編碼

UTF(UnicodeTransformationFormat)

UTF-8編碼是一種可“變長”的編碼格式,即把英文變長為1個字節(jié),而漢字用3個字節(jié)表示。a='中國'#a是unicode類型b=a.encode('utf-8')#b是utf-8類型c=a.encode('gbk')#c是gbk類型print(a,b,c)#中國b'\xe4\xb8\xad\xe5\x9b\xbd'b'\xd6\xd0\xb9\xfa'print(type(a),type(b),type(c))#<class'str'><class'bytes'><class'bytes'>d=b.decode('utf-8')e=c.decode('gbk')print(d,e)#中國

中國2.1Python標(biāo)識符與編碼2.2Python數(shù)字類型2.2.1數(shù)字變量

整型(int)二進(jìn)制:以0b開頭,如0b11011表示10進(jìn)制的27。八進(jìn)制:以0o開頭,如0o33表示10進(jìn)制的27。十進(jìn)制:通常數(shù)學(xué)上的寫法,如100,99等。十六進(jìn)制:以0x開頭,如:0x1b表示10進(jìn)制的27。浮點型(float)浮點型由整數(shù)部分與小數(shù)部分組成,浮點型也可以使用科學(xué)計數(shù)法表示(如2.7e2=2.7x102=270),又如:0.0、25.2、-2.9、-33.5e-10、12e+15等都是浮點型。2.2.1數(shù)字變量布爾型(bool)布爾型其值或為真True,或為假False。(注意True,F(xiàn)alse首字母大寫),在Python3中,True用1表示,F(xiàn)alse用0表示,可以和數(shù)字型進(jìn)行運算,如True+2值是3,F(xiàn)alse-2的值就是-2。字節(jié)型(bytes)bytes是Python3新增類型,以字節(jié)序列存儲數(shù)據(jù)。bytes類型常用來存儲圖片、音頻、視頻等二進(jìn)制格式的文件網(wǎng)絡(luò)通信中也常用bytes類型數(shù)據(jù)。

表示字節(jié)類型對象,如b"HelloWorld",b'\xe6‘b"\x01\x02\x03"復(fù)數(shù)類型(complex)

用a+bj,或者complex(a,b)表示,如8+3.15j、4.23e-3+5jcomplex(3,4)表示復(fù)數(shù)2.2Python數(shù)字類型print(type(123))#結(jié)果為:<class'int'>print(type(1.12))#結(jié)果為:<class'float'>print(type(3j+1))#結(jié)果為:<class'complex'>print(type(b'123'))#結(jié)果為:<class'bytes'>print(type(True))#結(jié)果為:<class'bool'>數(shù)字變量如5,9,9.0,math.pi(圓周率),math.e(自然常數(shù))注意:(1)2是整型對象,2.0是浮點型對象。(2)=稱為賦值運算符,左邊只能是變量,右邊可以是常量,變量及其表達(dá)式等。2.2Python數(shù)字類型算術(shù)運算2.3運算符運算符描述示例(a=1,b=2)+相加運算a+b輸出結(jié)果3-取負(fù)或相減運算a-b輸出結(jié)果-1*相乘或重復(fù)運算a*b輸出結(jié)果2/相除運算b/a輸出結(jié)果2//整除運算9//2輸出結(jié)果4,9.0//2.0輸出結(jié)果4.0%取余運算b%a輸出結(jié)果0**冪運算a**b為1的2次方,輸出結(jié)果1賦值運算運算符描述示例=賦值num=1+2*3結(jié)果num的值為7+=加法賦值c+=a等效于c=c+a-=減法賦值c-=a等效于c=c-a*=乘法賦值c*=a等效于c=c*a/=除法賦值c/=a等效于c=c/a%=取模賦值c%=a等效于c=c%a**=冪賦值c**=a等效于c=c**a//=取整除賦值c//=a等效于c=c//a

2.3運算符關(guān)系運算運算符描述示例結(jié)果==檢查兩個操作數(shù)的值是否相等,如果是則條件變?yōu)檎妗H鏰=3,b=3則(a==b)True!=檢查兩個操作數(shù)的值是否相等,如果值不相等,則條件變?yōu)檎?。如a=1,b=3則(a!=b)True>

檢查左操作數(shù)的值是否大于右操作數(shù)的值,如果是,則條件成立。如a=7,b=3則(a>b)True<

檢查左操作數(shù)的值是否小于右操作數(shù)的值,如果是,則條件成立。如a=7,b=3則(a<b)False>=檢查左操作數(shù)的值是否大于或等于右操作數(shù)的值,如果是,則條件成立。如a=3,b=3則(a>=b)True<=檢查左操作數(shù)的值是否小于或等于右操作數(shù)的值,如果是,則條件成立。如a=3,b=3則(a<=b)True2.3運算符邏輯運算運算符表達(dá)式求值特點andxandy如果x為False,xandy返回False,否則它返回y的計算值。orxory如果x是True,它返回True,否則它返回y的計算值。notnotx如果x為True,返回False。如果x為False,它返回True。print(3or2)#結(jié)果是3print(0or100)#結(jié)果是100print(1and2)#結(jié)果是2print(3and0)#結(jié)果是0print(0and2)#結(jié)果是0print(3and2)#結(jié)果是2print(1>2and3or4and3<2ornot4>5)#結(jié)果是True2.3運算符成員與身份運算運算符描述示例in如果在指定的序列中找到值返回True,否則返回False。xiny,x在y序列中,返回True。notin如果在指定的序列中沒有找到值返回True,否則返回False。xnoty,x不在y序列中,返回True。運算符描述示例isis是判斷兩個標(biāo)識符是不是引用同一個對象。xisy,如果id(x)等于id(y),返回True。isnotisnot是判斷兩個標(biāo)識符是不是引用不同對象。xisnoty,如果id(x)不等于id(y),返回True。2.3運算符str1="Chinaisagreatcountry!"print("China"instr1)#Trueset1={'小米','華為','oppo','vivo'}print("apple"notinstr1)#Truelist1=['聶海勝','劉伯明','湯洪波']print('湯洪波'inlist1)#True

list2=[1,2,3]list3=[1,2,3]print("list1和list2是否同一個對象:",list2islist3)#Falseprint("list1和list2的值是否相等:",list2==list3)#True2.3運算符2.4.1math庫2.4常用標(biāo)準(zhǔn)庫

數(shù)學(xué)常數(shù)math.e#自然常數(shù)e

math.pi#圓周率pimath.inf#無窮大,負(fù)無窮大為-math.infmath.nan#非浮點數(shù),nan(notanumber)

三角函數(shù)math.sin(x),math.cos(x),math.tan(x)math.asin(x),math.acos(x),math.atan(x)

角度和弧度互換math.degrees(x):將角度

x

從弧度轉(zhuǎn)換為度數(shù),math.radians(x):將角度

x

從度數(shù)轉(zhuǎn)換為弧度。

雙曲函數(shù)math.sinh(x),math.cosh(x),math.tanh(x)math.asinh(x),math.acosh(x),math.atanh(x)2.4.1math庫2.4常用標(biāo)準(zhǔn)庫其他常用函數(shù)函數(shù)作用示例fabs(a)取絕對值abs(-2.123)#2.123ceil(x)對x向上取整ceil(1.2)#2floor(x)對x向下取整floor(1.2)#1log(x[,base])對數(shù),默認(rèn)基底為e??梢孕薷腷aselog(100,10)#2sqrt(x)平方根sqrt(9)#3.0divmod(a,b)取商和余數(shù)divmod(5,2)#(2,1)pow(a,b)取乘方數(shù)pow(2,3)#8round(a,b)取指定位數(shù)的小數(shù),a代表浮點數(shù),b代表要保留的位數(shù)round(3.1415926,2)#3.142.4.1math庫2.4常用標(biāo)準(zhǔn)庫例2.4

編寫程序,已知x=1.8,使用math庫計算y=sinxcosx+4lnxfrommathimportsin,cos,logx=1.8y=sin(x)*cos(x)+4*log(x)#log是以e為底的對數(shù)print(y)例2.3根據(jù)圓的半徑為3,根據(jù)面積公式計算面積importmathr=3S=math.pi*r*rprint(S)2.4.2random庫2.4常用標(biāo)準(zhǔn)庫

數(shù)學(xué)常數(shù)math.e#自然常數(shù)e

math.pi#圓周率pimath.inf#無窮大,負(fù)無窮大為-math.infmath.nan#非浮點數(shù),nan(notanumber)

三角函數(shù)math.sin(x),math.cos(x),math.tan(x)math.asin(x),math.acos(x),math.atan(x)

角度和弧度互換math.degrees(x):將角度

x

從弧度轉(zhuǎn)換為度數(shù),math.radians(x):將角度

x

從度數(shù)轉(zhuǎn)換為弧度。

雙曲函數(shù)math.sinh(x),math.cosh(x),math.tanh(x)math.asinh(x),math.acosh(x),math.atanh(x)2.4常用標(biāo)準(zhǔn)庫random.seed(a)

作用是設(shè)置初始化隨機數(shù)種子,a是隨機數(shù)種子,可以是整數(shù)或浮點數(shù),random.random()

作用是生成一個[0.0,1.0)之間的隨機小數(shù)。random.randint(a,b)

作用是生成一個[a,b]之間的隨機整數(shù),參數(shù)a表示隨機區(qū)間的開始值,參數(shù)b表示隨機區(qū)間的結(jié)束值,隨機數(shù)包含結(jié)束值。random.randrange(start,stop[,step])

作用是生成一個[start,stop)之間以step為步長的隨機整數(shù)。2.4.2random庫2.4常用標(biāo)準(zhǔn)庫random.choice(seq)

作用是從序列類型(例如列表)seq中隨機返回一個元素,參數(shù)seq表示序列類型。random.shuffle(seq)

作用是從序列類型seq中元素隨機排列,返回打亂后的序列,參數(shù)seq表示序列類型,調(diào)用該函數(shù)后,序列類型變量seq將被改變。

random.sample(seq,n)

作用是從序列seq中選擇n個隨機的元素2.4.2random庫2.4常用標(biāo)準(zhǔn)庫例2.6

利用random庫常用隨機函數(shù)生成一些隨機數(shù)importrandomx=random.random()#random()隨機生成一個[0,1)之間的隨機數(shù)y=random.random()print(x,y*10)m=random.randint(0,10)#randint()隨機生成一個[0:10]之間的整數(shù)print(m)print(random.randrange(100,120,2))#輸出100~120間的偶數(shù)st1=random.choice([5,6,7,8,11,22,55])

st2=random.choice('adadfaifhasui')print(st1,st2)sli=random.sample([3,4,5,6,7,66,88],2)print(sli)#sample(a,b)隨機獲取a中指定b長度的片段lst=[1,2,4,5,6,9]random.shuffle(lst)print(lst)#shuffle()將一個列表內(nèi)的元素順序打亂

2.4.2random庫2.4.3time庫2.4常用標(biāo)準(zhǔn)庫time()函數(shù)

用于返回當(dāng)前時間的時間戳(從1970年1月1日00時00分00秒到現(xiàn)在的浮點秒數(shù))。localtime([secs])

函數(shù)

作用是格式化時間戳為本地時間(struct_time類型)。如果secs參數(shù)未傳入,就以當(dāng)前時間為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論