? ? ? ? 實(shí)在抱歉仰剿,第三天的內(nèi)容鴿到了現(xiàn)在(雖然我也不知道在和誰(shuí)道歉卧须,畢竟現(xiàn)在也沒(méi)有讀者另绩,可能是在跟第一天動(dòng)筆的自己說(shuō)的吧)。我以為我會(huì)天天更新花嘶,在斷更之后會(huì)選擇再也不更新笋籽,但是在半年之后的現(xiàn)在還是決定堅(jiān)持下去,只是單純地想完完整整把它做好椭员。好了车海,廢話不多說(shuō),繼續(xù)我們學(xué)習(xí)隘击。
? 一侍芝、程序的基本編寫方法(IPO)?
? ? ? ? ? ?-I? Input 輸入,程序的輸入
? ? ? ? ? ?-P Process 處理埋同,程序的主要邏輯(也就是算法)
? ? ? ? ? ?-O Output 輸出州叠,程序的輸出
? ? ??編程解決問(wèn)題的步驟(6個(gè)步驟):
? ? ? ? ? ? -分析問(wèn)題:分析問(wèn)題的計(jì)算部分,想清楚
? ? ? ? ? ? -劃分邊界:劃分問(wèn)題的功能邊界莺禁,規(guī)劃IPO
? ? ? ? ? ? -設(shè)計(jì)算法:設(shè)計(jì)問(wèn)題的求解算法留量,關(guān)注算法
? ? ? ? ? ? -編寫程序:編寫問(wèn)題的計(jì)算程序窄赋,編程序
? ? ? ? ? ? -調(diào)試測(cè)試:調(diào)試程序使正確運(yùn)行哟冬,運(yùn)行調(diào)試
? ? ? ? ? ? -升級(jí)維護(hù):適應(yīng)問(wèn)題的升級(jí)維護(hù)楼熄,更新完善
?實(shí)例1? 溫度轉(zhuǎn)換(攝氏度——華氏度:C =(F - 32)/1.8, F = C * 1.8 +32? )
? ? ? ? ? ? ? ? -輸入? 帶華氏或攝氏標(biāo)志的溫度值
? ? ? ? ? ? ? ? -處理 根據(jù)溫度標(biāo)志選擇適當(dāng)?shù)臏囟绒D(zhuǎn)換算法
? ? ? ? ? ? ? ? -輸出 帶攝氏或華氏標(biāo)志的溫度值
二浩峡、python程序語(yǔ)法元素分析
? ? ? 縮進(jìn): 縮進(jìn)表達(dá)程序的格式框架
? ? ? ? ? ? -嚴(yán)格明確? 縮進(jìn)時(shí)語(yǔ)法的一部分可岂,縮進(jìn)不正確程序運(yùn)行錯(cuò)誤
? ? ? ? ? ? -所屬關(guān)系? 表達(dá)代碼間包含和層次關(guān)系的唯一手段
? ? ? ? ? ? -長(zhǎng)度一致? 程序內(nèi)一致即可,一般用4個(gè)空格或1個(gè)TAB
? ? ?注釋:不被程序執(zhí)行的輔助性說(shuō)明信息
? ? ? ? ? ? -單行注釋? 以 # 開頭翰灾,其后內(nèi)容為注釋
? ? ? ? ? ? -多行注釋? 以 ''' 開頭和結(jié)尾?
? ? 變量:用來(lái)保存和表示數(shù)據(jù)的占位符號(hào)
? ? ? ? ? ? -變量采用標(biāo)識(shí)符(名字)來(lái)表示缕粹,關(guān)聯(lián)標(biāo)識(shí)符的過(guò)程叫命名,TempStr是變量名字? ? ? ? ? ? ? ? ? ? -可以使用等號(hào)(=)向變量賦值或修改值纸淮,= 被稱為賦值符號(hào)
? ? ? ? ? ? ? ? ? TempStr = "82F"? ?#向變量TempStr 賦值 “82F”????????
? ? 命名:關(guān)聯(lián)標(biāo)識(shí)符的過(guò)程
? ? ? ? ? ? -命名規(guī)則:大小寫字母平斩、數(shù)字、下劃線和漢字等字符及組合
? ? ? ? ? ? ? ? ? ? 如:TempStr 咽块, Python_Great 绘面, 這是Python學(xué)習(xí)
? ? ? ? ? ? -注意事項(xiàng): 大小寫敏感、首字符不能是數(shù)字侈沪、不與保留字相同
? ? ? ? ? ? ? ? ? ?如:Python 和 python 是不同變量揭璃, 123Python 是不合法的? ??
? ? ?保留字:被編程語(yǔ)言內(nèi)部定義并保留使用的標(biāo)識(shí)符
? ? ? ? ? ? ?-Python語(yǔ)言有33個(gè)保留字(也叫關(guān)鍵字)??python 保留字及其說(shuō)明
? ? ? ? ? ? ?-保留字是編程語(yǔ)言的基本單詞,大小寫敏感
? ? ? ? ? ? ? ? ? ? 如:if 是保留字亭罪, IF 可以當(dāng)作變量使用
? ? ?數(shù)據(jù)類型:供計(jì)算機(jī)程序理解的數(shù)據(jù)形式
? ? ? ? ? ? ?-程序設(shè)計(jì)語(yǔ)言不允許存在語(yǔ)法歧義瘦馍,需要定義數(shù)據(jù)的形式
? ? ? ? ? ? ? ? ? ? 需要給10,011应役,101關(guān)聯(lián)一種計(jì)算機(jī)可以理解的形式
? ? ? ? ? ? ?-程序設(shè)計(jì)語(yǔ)言通過(guò)一定方式向計(jì)算機(jī)表達(dá)數(shù)據(jù)的形式
? ? ? ? ? ? ? ? ? ? "123"表示文本字符串123情组, 123則表示數(shù)字123
? ? 字符串:由0個(gè)或多個(gè)字符組成的有序字符序列
? ? ? ? ? ? ?-字符串由一對(duì)單引號(hào)或一對(duì)雙引號(hào)表示
? ? ? ? ? ? ? ? ? ? ?"請(qǐng)輸入帶有符號(hào)的溫度值" 或 'C'
? ? ? ? ? ? -字符串是字符的有序序列,可以對(duì)其中的字符進(jìn)行索引
? ? ? ? ? ? ? ? ? ? ?"請(qǐng)" 是 "請(qǐng)輸入帶有符號(hào)的溫度值:"的第0個(gè)字符
? ? ? ? ? ? ? ?-使用 [ ] 獲取字符串中一個(gè)或多個(gè)字符
? ? ? ? ? ? ? ? ? ? ? 索引:返回字符串中單個(gè)字符? <字符串>[M]
? ? ? ? ? ? ? ? ? ? ? ? ? ? "請(qǐng)輸入帶有符號(hào)的溫度值:"[0]? ?或者? ?TempStr[-1]
? ? ? ? ? ? ? ? ? ? ? 切片:返回字符串中一段字符子串? <字符串>[M:N]
? ? ? ? ? ? ? ? ? ? ? ? ? ? "請(qǐng)輸入帶有符號(hào)的溫度值:"[1:3]? 或者? ?TempStr[0:-1]
? ? 數(shù)字類型:整數(shù)和浮點(diǎn)數(shù)都是數(shù)字類型
? ? ? ? ? ? ? -整數(shù)? 數(shù)學(xué)中的整數(shù)
? ? ? ? ? ? ? -浮點(diǎn)數(shù)? 數(shù)學(xué)中的實(shí)數(shù)箩祥,帶有小數(shù)部分
? ? 列表類型:由0個(gè)或多個(gè)數(shù)據(jù)組成的有序序列
? ? ? ? ? ? ? -列表使用[ ]表示呻惕,采用逗號(hào)(,)分隔各元素
? ? ? ? ? ? ? ? ? ? ? ? ?[ 'F' , 'f' ]表示兩個(gè)元素'F'和'f'
? ? ? ? ? ? ? ?-使用保留字 in 判斷一個(gè)元素是否在列表中
? ? ? ? ? ? ? ? ? ? ? ? ?TempStr[-1]? in? ['C' , 'c'] 判斷前者是否與列表中某個(gè)元素相同
? ? 賦值語(yǔ)句:由賦值符號(hào)構(gòu)成的一行代碼
? ? ? ? ? ? ? ? -賦值語(yǔ)句用來(lái)給變量賦予新的數(shù)據(jù)值
? ? ? ? ? ? ? ? ? ? ? ? ? C = (eval(TempStr[0:-1] -32 ) / 1.8 )? ?#右側(cè)運(yùn)算結(jié)果賦給變量C
? ? ? ? ? ? ? ? -賦值語(yǔ)句右側(cè)的數(shù)據(jù)類型同時(shí)作用于變量? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ?TempStr = input(" ")? ?#input() 返回一個(gè)字符串,TempStr 也是字符串
? ? ?分支語(yǔ)句:由判斷條件決定程序運(yùn)行方向的語(yǔ)句
? ? ? ? ? ? ? ? -使用保留字 if? ?elif? ?else 構(gòu)成條件判斷的分支結(jié)構(gòu)
? ? ? ? ? ? ? ? ? ? ? ? if TempStr[-1] in ['F' , 'f']:? ?#如果條件為True則執(zhí)行冒號(hào)后語(yǔ)句
? ? ? ? ? ? ? ? -每個(gè)保留字所在行最后存在一個(gè)冒號(hào)(:)滥比,語(yǔ)法的一部分
? ? ? ? ? ? ? ? ? ? ? ? 冒號(hào)及后續(xù)縮進(jìn)用來(lái)表示后續(xù)語(yǔ)句與條件的所屬關(guān)系
? ? ? 函數(shù):根據(jù)輸入?yún)?shù)產(chǎn)生不同輸出的功能過(guò)程
? ? ? ? ? ? ? -類似數(shù)學(xué)中的函數(shù)亚脆,y = f(x)
? ? ? ? ? ? ? ? ? ? ? ? print("輸入格式錯(cuò)誤")? #打印輸出? “輸入格式錯(cuò)誤”
? ? ? ? ? ? ? -函數(shù)采用<函數(shù)名>(<參數(shù)>)方式使用
? ? ? ? ? ? ? ? ? ? ? ? eval(TempStr[ 0 : -1])? ? ? ? #TempStr[0 : -1]是參數(shù)
? ? ? ?輸入函數(shù)? input():從控制臺(tái)獲得用戶輸入的函數(shù)
? ? ? ? ? ? ? ? ? ? -input()函數(shù)的使用格式:
? ? ? ? ? ? ? ? ? ? ? ? <變量> = input( <提示信息字符串> )
? ? ? ? ? ? ? ? ? ?-用戶輸入的信息以字符串類型保存在<變量>中
? ? ? ? ? ? ? ? ? ? ? ? TempStr = input("請(qǐng)輸入")? ? ? ? ?#TempStr保存用戶輸入的信息??
? ? ? ?輸出函數(shù)? print():以字符形式向控制臺(tái)輸出結(jié)果的函數(shù)
? ? ? ? ? ? ? ? ?-print() 函數(shù)的基本使用格式:
? ? ? ? ? ? ? ? ? ? ? ?print(<擬輸出字符串或字符串變量>)
? ? ? ? ? ? ? ? -字符串類型的一對(duì)引號(hào)僅在程序內(nèi)部使用,輸出無(wú)引號(hào)
? ? ? ? ? ? ? ? ? ? ? print("輸入格式錯(cuò)誤")? ? #向控制臺(tái)輸出? 輸入格式錯(cuò)誤
? ? ? ? ? ? ? ? -print()函數(shù)的格式化:
? ? ? ? ? ? ? ? ? ? ?print("轉(zhuǎn)換后的溫度是 {:.2f}C".format(C))??
? ? ? ? ? ? ? ? ? ? ? ? ?{ }表示槽盲泛,后續(xù)變量填充至槽中濒持,{:.2f}表示將變量C填充時(shí)取小數(shù)點(diǎn)后兩位
? ? ? ? ? ? ? ? ? ? ? ? 如果C的值是123.456789,則輸出結(jié)果為? 轉(zhuǎn)換后的溫度是123.45C
? ? ? ? 評(píng)估函數(shù) eval(): 去掉參數(shù)最外側(cè)引號(hào)并執(zhí)行余下語(yǔ)句的函數(shù)
? ? ? ? ? ? ? ? ?-eval()函數(shù)的基本使用格式:
? ? ? ? ? ? ? ? ? ? ? eval(<字符串或字符串變量>)
? ? ? ? ? ? ? ? ? ? ? ? ?>>> eval("1")? ? ? ? ? ? ? ? ? ? ? ? ? ? ?1
? ? ? ? ? ? ? ? ? ? ? ? ?>>>eval("1+2")? ? ? ? ? ? ? ? ? ? ? ? ? 3
? ? ? ? ? ? ? ? ? ? ? ? ?>>>eval(' "1+2" ')? ? ? ? ? ? ? ? ? ? '1+2'
? ? ? ? ? ? ? ? ? ? ? ? ?>>>eval('print("Hello")')? ? ? ? ? ?Hello
? ? ? ? 根據(jù)這個(gè)python語(yǔ)法的元素介紹寺滚,以此來(lái)分析實(shí)例1的代碼柑营,逐行理解這十行代碼的意義,當(dāng)然適合自己敲上一敲了村视。附上我自己敲的內(nèi)容官套。
寫在后面
? ? ? ? ? ?一上來(lái)就擺出這么多語(yǔ)法元素的解釋,看起來(lái)可能有一些枯燥,甚至有些內(nèi)容表述的不太好理解奶赔,而且會(huì)覺得一上來(lái)這是在干嘛惋嚎,直接上實(shí)例根本看不懂啊。
但是如果拋棄了這樣的觀念站刑,耐下心對(duì)著這些元素解釋把實(shí)例中的邏輯理清楚另伍,不需要一上來(lái)就強(qiáng)迫自己能寫出這樣的代碼,等理解完之后绞旅,自己嘗試把這實(shí)例內(nèi)容默寫一遍摆尝,這樣的話,我覺得在一次次糾錯(cuò)中成長(zhǎng)會(huì)更快因悲。相信我堕汞,等默寫完這段代碼,你已經(jīng)入門了晃琳,這個(gè)時(shí)候已經(jīng)和那些凡夫俗子不再一樣臼朗,接下來(lái)等待你的將是一個(gè)個(gè)想被你征服的……(咳咳~)。
? ? ? ? ? ? ? ? 希望這次不會(huì)再斷更了蝎土,斷更好可怕视哑,一不小心半年就過(guò)去了( ̄◇ ̄;)