版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
Python科學計算及應用
Python科學計算基礎Python數(shù)字類型2.2運算符2.3Python標識符與編碼2.1常用標準庫2.4
Python科學計算基礎2.1.1標識符標識符由字母、下劃線和數(shù)字組成,且不能以數(shù)字開頭的符號串。2.1Python標識符與編碼合法的標識符:UserID
name
mode12
user_age思考:下面哪些是標識符?為什么?fromNo12from#12my_Booleanmy-BooleanObj22ndObjmyIntMike2jackMy_tExt_testtest!32haha(da)ttintjack_rosejack&roseG.U.I2.1.2命名規(guī)范
見名知意表示名字就用標識符name,表示學生用標識符student等駝峰命名法小駝峰命名法:myName、aDog大駝峰命名法:FirstName、LastName下劃線表示法
用下劃線“_”分隔開,例如my_name,your_Family2.1Python標識符與編碼2.1.3關鍵字通過命令keyword.kwlist查看當前系統(tǒng)中的關鍵字2.1Python標識符與編碼2.1.4編碼2.1Python標識符與編碼ASCII編碼
AmericanStandardCodeforInformationInterchange一個字節(jié)表示一個ASCII碼,共有256種符號GB2312與GBK
GB2312-1980,收錄6千多個漢字,使用非常普遍。GBK(K表示擴展),可表示2萬多個漢字和圖形符號。Unicode標準碼
統(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標識符與編碼2.2Python數(shù)字類型2.2.1數(shù)字變量
整型(int)二進制:以0b開頭,如0b11011表示10進制的27。八進制:以0o開頭,如0o33表示10進制的27。十進制:通常數(shù)學上的寫法,如100,99等。十六進制:以0x開頭,如:0x1b表示10進制的27。浮點型(float)浮點型由整數(shù)部分與小數(shù)部分組成,浮點型也可以使用科學計數(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ù)字型進行運算,如True+2值是3,F(xiàn)alse-2的值就是-2。字節(jié)型(bytes)bytes是Python3新增類型,以字節(jié)序列存儲數(shù)據(jù)。bytes類型常用來存儲圖片、音頻、視頻等二進制格式的文件網(wǎng)絡通信中也常用bytes類型數(shù)據(jù)。
表示字節(jié)類型對象,如b"HelloWorld",b'\xe6‘b"\x01\x02\x03"復數(shù)類型(complex)
用a+bj,或者complex(a,b)表示,如8+3.15j、4.23e-3+5jcomplex(3,4)表示復數(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)=稱為賦值運算符,左邊只能是變量,右邊可以是常量,變量及其表達式等。2.2Python數(shù)字類型算術運算2.3運算符運算符描述示例(a=1,b=2)+相加運算a+b輸出結(jié)果3-取負或相減運算a-b輸出結(jié)果-1*相乘或重復運算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運算符關系運算運算符描述示例結(jié)果==檢查兩個操作數(shù)的值是否相等,如果是則條件變?yōu)檎?。如a=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運算符邏輯運算運算符表達式求值特點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是判斷兩個標識符是不是引用同一個對象。xisy,如果id(x)等于id(y),返回True。isnotisnot是判斷兩個標識符是不是引用不同對象。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常用標準庫
數(shù)學常數(shù)math.e#自然常數(shù)e
math.pi#圓周率pimath.inf#無窮大,負無窮大為-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常用標準庫其他常用函數(shù)函數(shù)作用示例fabs(a)取絕對值abs(-2.123)#2.123ceil(x)對x向上取整ceil(1.2)#2floor(x)對x向下取整floor(1.2)#1log(x[,base])對數(shù),默認基底為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常用標準庫例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常用標準庫
數(shù)學常數(shù)math.e#自然常數(shù)e
math.pi#圓周率pimath.inf#無窮大,負無窮大為-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常用標準庫random.seed(a)
作用是設置初始化隨機數(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常用標準庫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常用標準庫例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常用標準庫time()函數(shù)
用于返回當前時間的時間戳(從1970年1月1日00時00分00秒到現(xiàn)在的浮點秒數(shù))。localtime([secs])
函數(shù)
作用是格式化時間戳為本地時間(struct_time類型)。如果secs參數(shù)未傳入,就以當前時間為
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆江西省撫州市數(shù)學高三上期末經(jīng)典模擬試題含解析
- 福建省廈門市重點中學2025屆高二數(shù)學第一學期期末檢測試題含解析
- 2025屆崇左市重點中學生物高三上期末教學質(zhì)量檢測模擬試題含解析
- 重慶市酉陽縣2025屆高三英語第一學期期末學業(yè)水平測試試題含解析
- 2025屆廣西示范初中高三數(shù)學第一學期期末學業(yè)質(zhì)量監(jiān)測模擬試題含解析
- 2025屆廣東省江門市江海區(qū)禮樂中學數(shù)學高三上期末經(jīng)典模擬試題含解析
- 2025屆泉州第五中學數(shù)學高一上期末復習檢測模擬試題含解析
- 江蘇省鹽城市建湖中學、大豐中學等四校2025屆英語高三上期末統(tǒng)考模擬試題含解析
- 河南省葉縣一高2025屆高三英語第一學期期末質(zhì)量檢測試題含解析
- 2025屆江蘇揚州市高二生物第一學期期末達標檢測試題含解析
- 壓力管道檢驗員在線考試習題與答案
- 《語文青蛙看?!穚pt課件
- 河湖生態(tài)系統(tǒng)保護與修復工程技術導則 SLT800-2020_(高清-有效)
- 愛護我們的牙齒PPT
- 日語名大全(附帶中文和英語翻譯)
- 2022年小學數(shù)學因數(shù)與倍數(shù)、質(zhì)數(shù)與合數(shù)練習題答案2
- 超星爾雅學習通《就業(yè)指導》章節(jié)測試答案
- 月度會議ppt模板
- 成都銀花絲首飾消費特征分析
- 社區(qū)衛(wèi)生服務中心安全生產(chǎn)自查表
- 不“管資產(chǎn)”,如何“管資本”
評論
0/150
提交評論