版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Python科學(xué)計(jì)算及應(yīng)用
Python計(jì)算結(jié)構(gòu)分支計(jì)算3.2循環(huán)計(jì)算3.3順序計(jì)算3.1
Python計(jì)算結(jié)構(gòu)
Python計(jì)算結(jié)構(gòu)3.1.1輸入函數(shù)input()變量=input()
變量=input("提示信息")3.1順序計(jì)算注意:無論用戶輸入的是什么,都將以字符串的形式返回。如用戶輸入100,那么變量接收的不是整型數(shù)100,而是字符串100,即“100”,如:name=input("請輸入名字:")print('您剛剛輸入的名字是:',name)3.1.2求值函數(shù)eval()eval(expression,globals=None,locals=None)3.1順序計(jì)算字符串轉(zhuǎn)換成列表:
a="[1,2,3,4,5]"#a是字符串類型數(shù)據(jù)b=eval(a)#b是列表類型數(shù)據(jù)
字符串轉(zhuǎn)換成字典
a="{"name":"guo","age":25}"#a為字符串類型數(shù)據(jù)b=eval(a)#b為字典類型數(shù)據(jù)
字符串轉(zhuǎn)換為元組a="(1,2,3,4,5)"#a的數(shù)據(jù)結(jié)構(gòu)是字符串b=eval(a)#b的數(shù)據(jù)結(jié)構(gòu)是元組eval()返回表達(dá)式的值
x=4eval("5*x")#返回值為203.1.3輸出函數(shù)print()函數(shù)的語法如下:print(objects,sep='',end='\n',file=sys.stdout)3.1順序計(jì)算格式化輸出格式符號轉(zhuǎn)換對應(yīng)的類型%c字符%s通過str()字符串轉(zhuǎn)換來格式化%d有符號十進(jìn)制整數(shù)%u無符號十進(jìn)制整數(shù)%o八進(jìn)制整數(shù)%x十六進(jìn)制整數(shù)(小寫字母)%X十六進(jìn)制整數(shù)(大寫字母)%e索引符號(小寫'e')%E索引符號(大寫“E”)%f浮點(diǎn)實(shí)數(shù)%g%f和%e的簡寫%G%f和%E的簡寫age=18name="小明"print("我的姓名是%s,年齡是%d"%(name,age))
轉(zhuǎn)義字符print("1234567890-------")#會(huì)在一行顯示print("1234567890\n-------")#第一行顯示’1234567890’,第二行顯示’-------’3.1順序計(jì)算轉(zhuǎn)義符號含義示例結(jié)果\newline輸入多行s=“a\b\c”print(s)abc\\反斜杠print(“\\”)\\’單引號print(‘\’’)’\”雙引號print(“\””)”\b退格,刪除前一個(gè)字符print(“ab\b”)a\f分頁,隔開一頁print(“hello\fworld”)hello↑world\n換行print(“a\nb”)ab\t橫向制表符print(“a\tb”)a
b\v縱向制表符print(“a\vb”)a
b\oxx八進(jìn)制xx代表的字符print(“\043”)#\xhh十六進(jìn)制hh代表的字符print(“\x23”)#3.1順序計(jì)算3.2.1if判斷語句age=10print("****if判斷開始****")ifage>18:print("已經(jīng)成年")print("****if判斷結(jié)束****")3.2分支計(jì)算例3.2
輸入學(xué)生成績,輸出等級分(ABCDE等)score=int(input("請輸入成績:"))if90<=score<=100:print('A')if80<=score<90:print('B')if70<=score<80:print('C')if60<=score<70:print('D')ifscore<60:print('E')3.2.2if-else語句age=input("請輸入年齡:")age=int(age)ifage>18:print("已經(jīng)成年")else:print("未成年")例3.3輸入一個(gè)數(shù),判斷值是否在0~5或者10-20之間,如是輸出valid,否則輸出invalidnum=int(input("請輸入一個(gè)數(shù):"))if(num>=0andnum<=5)or(num>=10andnum<=0):print('valid')else:print('invalid')3.2分支計(jì)算3.2.3elif語句3.2分支計(jì)算if條件1:事情1elif條件2:事情2elif條件3:事情3score=int(input("請輸入成績:"))ifscore>=90andscore<=100:print('本次考試,等級為A')elifscore>=80andscore<90:print('本次考試,等級為B')elifscore>=70andscore<80:print('本次考試,等級為C')elifscore>=60andscore<70:print('本次考試,等級為D')elifscore>=0andscore<60:print('本次考試,等級為E')值得注意的是elif必須和if一起使用,不能單獨(dú)使用,否則出錯(cuò)。3.2.4if嵌套3.2分支計(jì)算ticket=0#車票,非0代表有車票,0代表沒有車票suitcase=1#手提箱,0代表檢查合格,非0代表有違禁品ifticket!=0:print("有車票,可以進(jìn)站")ifsuitcase==0:print("通過安檢")print("終于可以回家了,美滋滋~~~")else:print("沒有通過安檢,手提箱中有違禁品")print("警察叔叔!請聽我解釋...")else:print("沒有車票,不能進(jìn)站")print("就這張票,昨天還能進(jìn)的!")例3.4
編寫程序模擬猜拳游戲。參考程序如下:importrandom#導(dǎo)入隨機(jī)函數(shù)庫player=int(input('請輸入:剪刀(0)石頭(1)布(2):'))computer=random.randint(0,2)#在[0,2]取隨機(jī)數(shù)#用來進(jìn)行測試#print('player=%d,computer=%d',(player,computer))#一行太長希望多行顯示,使用\進(jìn)行連接if((player==0)and(computer==2))\or((player==1)and(computer==0))\or((player==2)and(computer==1)):print('獲勝,哈哈,你太厲害了')elifplayer==computer:print('平局,要不再來一局')else:print('輸了,不要走,再來決戰(zhàn)!')3.2分支計(jì)算3.3.1for循環(huán)list(range(4))#[0,1,2,3]list(range(0,5))#[0,1,2,3,4]list(range(0,10,3))#[0,3,6,9]list(range(-4,4))#[-4,-3,-2,-1,0,1,2,3]list(range(4,-4,-1))#[4,3,2,1,0,-1,-2,-3]3.3循環(huán)計(jì)算range()函數(shù)語法格式:range(start,end,step)注意:range()函數(shù)返回的是一個(gè)可迭代對象(類型是對象),而不是列表類型,
所以輸出的時(shí)候不會(huì)顯示列表。list()函數(shù)可以把range()返回的可迭代對象轉(zhuǎn)為一個(gè)列表,返回的變量類型為列表。for循環(huán)語句語法格式是:for變量in可迭代對象:
循環(huán)需要執(zhí)行的代碼foriinrange(5):print(i,end=’’)#輸出01234foritemin'python':print(item):#輸出pythonfor_inrange(5):#下劃線可以當(dāng)作臨時(shí)變量print('helloworld')#將helloworld打印5遍課程練習(xí):1.求1~100之間所有偶數(shù)之和2.輸入一個(gè)整數(shù),求該數(shù)的階乘3.3循環(huán)計(jì)算break:
表示終止循環(huán),即不執(zhí)行本次循環(huán)中break后的語句,直接跳出循環(huán)。continue表示終止本次循環(huán),即本次循環(huán)中continue后面的代碼不執(zhí)行,進(jìn)入下一次循環(huán)的入口判斷。exit()表示結(jié)束進(jìn)程,即整個(gè)退出系統(tǒng)。break和continue語句foriinrange(10):ifi==5:breakprint(i)print('hellopython')foriinrange(10):ifi==5:continueprint(i)print('hellopython')3.3循環(huán)計(jì)算for…else語句功能:在循環(huán)正常結(jié)束后,執(zhí)行else的內(nèi)容。ID=[1,2,3]foriinID:print(i,end='')else:print("\n循環(huán)正常結(jié)束,請顯示我!")forninrange(2,100):forxinrange(2,n):ifn%x==0:breakelse:#注意else和for對齊print(n,end='')求100以內(nèi)素?cái)?shù),用for…else結(jié)構(gòu)實(shí)現(xiàn)3.3循環(huán)計(jì)算pass語句功能:表示空,啥也不干,只有語法上的意義forletterin'RedMolly':ifletter=='l':passprint('當(dāng)前字母:',letter)print("Goodbye!")例3.5
有1,2,3,4四個(gè)數(shù)字,求這四個(gè)數(shù)字能生成多少個(gè)互不相同且無重復(fù)數(shù)字的三位數(shù)。count=0#記錄符合要求的數(shù)字個(gè)數(shù)foriin(1,2,3,4):forjin(1,2,3,4):forkin(1,2,3,4):ifi!=jandi!=kandj!=k:#去重count+=1print(count)#輸出243.3循環(huán)計(jì)算num1=int(input('Num1:'))#輸入兩個(gè)整數(shù)num2=int(input('Num2:'))min_num=min(num1,num2)#找出兩個(gè)數(shù)中的最小值#最大公約數(shù)范圍在1~min_num之間foriinrange(1,min_num+1):ifnum1%i==0andnum2%i==0:gys=igbs=(num1*num2/gys)#最小公倍數(shù)print('%d和%d的最大公約數(shù)為:%d'%(num1,num2,gys))print('%d和%d的最小公倍數(shù)為:%d'%(num1,num2,gbs))例3.6
輸入兩個(gè)整數(shù),求兩個(gè)數(shù)的最大公約數(shù)和最小公倍數(shù)。(最小公倍數(shù)=(num1*num2)/最大公約數(shù))3.3循環(huán)計(jì)算foriinrange(3):name=input('用戶名:')passwd=input('密碼:')ifname=='user'andpasswd=='6666':print('登錄成功!')breakelse:print('登錄失敗')print('您還剩余%d次機(jī)會(huì)'%(2-i))
else:print('失敗超過3次,請稍后再試!')例3.7
用for循環(huán)實(shí)現(xiàn)用戶登錄,輸入用戶名和密碼;判斷用戶名和密碼是否正確(name='user',passwd='6666'),登錄僅有三次機(jī)會(huì),超過3次會(huì)報(bào)錯(cuò)。3.3循環(huán)計(jì)算count=0while(count<5):print('
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)家的創(chuàng)新思維與領(lǐng)導(dǎo)力培養(yǎng)
- 企業(yè)內(nèi)部實(shí)驗(yàn)室質(zhì)量控制體系搭建
- 創(chuàng)新驅(qū)動(dòng)小區(qū)內(nèi)日用百貨的銷售模式創(chuàng)新探索
- 兒童數(shù)學(xué)教育中的情感營銷策略研究結(jié)題報(bào)告
- 全民健身視角下的家庭體育指導(dǎo)策略
- 企業(yè)辦公環(huán)境下的安全培訓(xùn)類APP設(shè)計(jì)研究
- 生物化學(xué)實(shí)驗(yàn)技術(shù)酶聯(lián)免疫吸附劑測定法
- 2025湖南省農(nóng)村土地承包經(jīng)營權(quán)轉(zhuǎn)讓合同
- 企業(yè)制度匯編匯編【職工管理篇】
- 電力機(jī)車學(xué)員定職副司機(jī)練習(xí)題題庫(1536道)
- 配網(wǎng)規(guī)劃建設(shè)匯報(bào)
- 電氣自動(dòng)化專業(yè)職業(yè)生涯目標(biāo)規(guī)劃書范例及步驟
- 2024-2025學(xué)年上學(xué)期天津六年級英語期末模擬卷1
- 餐飲行業(yè)智能點(diǎn)餐與外賣系統(tǒng)開發(fā)方案
- 2024-2025學(xué)年九年級數(shù)學(xué)上學(xué)期期末考試卷
- 水利工程特點(diǎn)、重點(diǎn)、難點(diǎn)及應(yīng)對措施
- 物業(yè)經(jīng)理轉(zhuǎn)正述職
- 24秋國家開放大學(xué)《企業(yè)信息管理》形考任務(wù)1-4參考答案
- 2024年共青團(tuán)團(tuán)課培訓(xùn)考試題庫及答案
- 2024年共青團(tuán)入團(tuán)考試測試題庫及答案
- 中國稅制學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
評論
0/150
提交評論