四、入门python第四课
本節(jié)課我開始正式進(jìn)入python內(nèi)容的學(xué)習(xí),本節(jié)學(xué)習(xí)目標(biāo)為:
1.注釋
2.變量
3.bug
4.數(shù)據(jù)類型
5.輸出
6.輸入
7.數(shù)據(jù)類型轉(zhuǎn)換
8.運算符
一、注釋
在講解注釋之前我們先來看一張有注釋的圖片和一張沒有注釋的圖片
沒有注釋的圖片:
?有注釋的圖片:
?????????很顯然,有注釋的圖片給人一種清晰的感覺,讓人一眼就知道這段代碼寫的是什么。就我個人感覺而言,寫代碼的時候適當(dāng)?shù)奶砑右恍┳⑨屖呛苡斜匾?#xff0c;因為人的記憶是有限的,我自己常常因為不寫注釋而忘記前幾天寫的代碼到底是干什么的。程序員有一個通病:最討厭寫代碼的時候自己寫注釋,也最討厭寫代碼的時候別人不寫注釋。代碼是寫給電腦看的,而注釋是寫給人看的,只有當(dāng)一段代碼里面有50%的注釋這段代碼才有存在的意義,因為在以后無論是在團(tuán)隊開發(fā)還是自己寫一些小程序、小腳本都需要后期的維護(hù),不然到時候自己只能吐槽這是誰寫的屎,全然不知是自己前幾天寫的代碼,自己寧愿重新寫也不愿意看自己前幾天寫的代碼。
單行注釋:
# 注釋內(nèi)容多行注釋:
"""第??注釋第??注釋第三?注釋 """ '''注釋1注釋2注釋3 '''其中單行注釋的快捷鍵是 CTRL + /?
快速體驗:
# 輸出hello world print('hello world') print('這里是輸出的內(nèi)容') #根據(jù)自己的情況自己寫注釋"""下?三?都是輸出的作?,輸出內(nèi)容分別是:hello Pythonhello itcasthello itheima """ print('hello Python') print('hello itcast') print('hello itheima') '''下?三?都是輸出的作?,輸出內(nèi)容分別是:hello Pythonhello itcasthello itheima ''' print('hello Python') print('hello itcast') print('hello itheima')二、變量
什么是變量?變量有什么用?
????????要搞清楚這個問題其實很簡單,變量其實就像是圖書館里面書本的名字,當(dāng)我們需要到某一本書的時候,根據(jù)書本的名字查找書本在圖書館的位置,最終找到我們想要的書本。
? ? ? ? 計算機(jī)里面的變量也是一樣,當(dāng)我們實例化一個變量的時候就相當(dāng)于我們?yōu)檫@本書起了一個名字,并把這本書放到了內(nèi)存中(圖書館中),當(dāng)我們需要的時候直接在內(nèi)存中查找。
定義變量
????????變量名 = 值
標(biāo)識符
? ? ? ? 注意,變量名不能等同于關(guān)鍵字,簡單來說就是python中有一些名字已經(jīng)被使用了,你就不能夠再次使用,不然解釋器不知道你說的這變量是哪一個(這個錯誤pycharm一般會有提醒)
標(biāo)識符命名規(guī)則是Python中定義各種名字的時候的統(tǒng)?規(guī)范,具體如下:
????????????????由數(shù)字、字?、下劃線組成
????????????????不能數(shù)字開頭
????????????????不能使?內(nèi)置關(guān)鍵字
????????????????嚴(yán)格區(qū)分??寫
常見關(guān)鍵字:
False None True and as assert break continue def del elif else except finally from global if import in is lambda not or pass raise return try while yield
變量的常規(guī)命名習(xí)慣:
?????????名知義。
?????????駝峰:即每個單詞?字?都?寫,例如: MyName 。
?????????駝峰:第?個(含)以后的單詞?字??寫,例如: myName 。
????????下劃線:例如: my_name 。
變量的使用
? ? ? ? 變量的使用我們直接調(diào)用就好,例如:
my_name = 'TOM' print(my_name) schoolName = '輝龍最帥' print(schoolName)三、BUG
????????剛?cè)腴T的程序員寫的bug一般來說是比較多的,這個時候我不太建議新手一個人自學(xué),造一個老師傅來帶會事半功倍。
bebug工具
????????Debug?具是PyCharm IDE中集成的?來調(diào)試程序的?具,在這?程序員 可以查看程序的執(zhí)?細(xì)節(jié)和流程或者調(diào)解bug。
1.打斷點
斷點位置:?標(biāo)要調(diào)試的代碼塊的第??代碼即可,即?個斷點即可。
打斷點的?法:單擊?標(biāo)代碼的?號右側(cè)空?位置。
?2.Bebug調(diào)試
????????打成功斷點后,在?件內(nèi)部任意位置 — 右鍵 -- Debug'?件名' — 即可調(diào) 出Debug?具?板 -- 單擊Step Over/F8,即可按步執(zhí)?代碼。
Debug輸出?板分類
Debugger 顯示變量和變量的細(xì)節(jié)/Console 輸出內(nèi)容
?四、認(rèn)識數(shù)據(jù)類型
這里我們只是初步的來了解一下,后面我們會詳細(xì)講。在 Python ?為了應(yīng)對不同的業(yè)務(wù)需求,也把數(shù)據(jù)分為不同的類型。
在python中,檢查數(shù)據(jù)類型的方法是type()?
快速體驗:
a = 1 print(type(a)) # <class 'int'> -- 整型 b = 1.1 print(type(b)) # <class 'float'> -- 浮點型 c = True print(type(c)) # <class 'bool'> -- 布爾型 d = '12345' print(type(d)) # <class 'str'> -- 字符串 e = [10, 20, 30] print(type(e)) # <class 'list'> -- 列表 f = (10, 20, 30) print(type(f)) # <class 'tuple'> -- 元組 h = {10, 20, 30} print(type(h)) # <class 'set'> -- 集合 g = {'name': 'TOM', 'age': 20} print(type(g)) # <class 'dict'> -- 字典python中量類型的特征:
? ? ? ? 1.不需要指定類型(在其他很多?級語?中都需 要)
# 不需要執(zhí)?數(shù)據(jù)類型 a是int類型 a = 10 # b是float類型 b = 1.12345? ? ? ? 2.類型在使?過程中隨時變化,以最后?次=操作的結(jié)果為準(zhǔn)
a = True # a的類型是bool類型 print(type(a)) # 修改a a = 1.12345 # a的類型是float類型 print(type(a))五、輸出
說白了就是程序把結(jié)果作為輸出內(nèi)容給用戶反饋
格式化輸出:按照一定的格式輸出內(nèi)容
%0nd,表示輸出的整數(shù)顯示位數(shù),不?時以0補(bǔ)全,超出當(dāng)前位數(shù)則 原樣輸出
%.nf,表示?數(shù)點后?顯示的?數(shù)位數(shù)為n位 在print中?輸出符號占位,在百分號后???括號把對應(yīng)的變量給括 起來
????????常?的三種格式化符號有: %s 、%d 、%f 。 請按照你填寫是順序來說明每個符號對應(yīng)的數(shù)據(jù)類型:字符串、有符號的 ?進(jìn)制整數(shù)、浮點數(shù)。
快速體驗:
""" 1. 準(zhǔn)備數(shù)據(jù) 2. 格式化符號輸出數(shù)據(jù) """ age = 18 name = 'TOM' weight = 75.5 stu_id = 1 stu_id2 = 1000 # 1. 今年我的年齡是x歲 -- 整數(shù) %d print('今年我的年齡是%d歲' % age) # 2. 我的名字是x -- 字符串 %s print('我的名字是%s' % name) # 3. 我的體重是x公? -- 浮點數(shù) %f print('我的體重是%.3f公?' % weight) # 4. 我的學(xué)號是x -- %d print('我的學(xué)號是%d' % stu_id) # 4.1 我的學(xué)號是001 print('我的學(xué)號是%03d' % stu_id) print('我的學(xué)號是%03d' % stu_id2) # 5. 我的名字是x,今年x歲了 print('我的名字是%s,今年%d歲了' % (name, age)) # 5.1 我的名字是x,明年x歲了 print('我的名字是%s,明年%d歲了' % (name, age + 1)) # 6. 我的名字是x,今年x歲了,體重x公?,學(xué)號是x print('我的名字是%s,今年%d歲了,體重%.2f公?,學(xué)號是%06d' % (name,age,weight,stu_id2))拓展格式化字符串
????????其它數(shù)據(jù)類型以字符串顯示的時候,可以在格式化的時候,將原本對應(yīng)類 型的格式化符號換成%s
name = 'TOM' age = 18 weight = 75.5 # 我的名字是x,今年x歲了,體重x公? print('我的名字是%s,今年%s歲了,體重%s公?' % (name, age, weight))f-格式化字符串
格式化字符串除了%s,還可以寫為 f'{表達(dá)式}'
f-格式化字符串是Python3.6中新增的格式化?法,該?法更簡單易 讀。
name = 'TOM' age = 18 # 我的名字是x,今年x歲了 print('我的名字是%s,今年%s歲了' % (name, age)) # 語法 f'{表達(dá)式}' print(f'我的名字是{name},今年{age}歲了')轉(zhuǎn)義字符
\n :換?。
\t :制表符,?個tab鍵(4個空格)的距離。
print('hello') print('world') print('hello\nPython') print('\tabcd')結(jié)束符
在Python中,print(), 默認(rèn)?帶 end="\n" 這個換?結(jié)束符,所以 導(dǎo)致每兩個 print 直接會換?展示,?戶可以按需求更改結(jié)束符。
print('輸出的內(nèi)容', end="\n")# 以換?結(jié)尾 print('hello', end="\n") # 以制表符 print('world', end="\t") # 以...結(jié)尾 print('hello', end="...") print('Python')六、輸入
輸入即python程序接收用戶輸入的數(shù)據(jù)進(jìn)行處理
輸入的特點
????????當(dāng)程序執(zhí)?到 input ,等待?戶輸?,輸?完成之后才繼續(xù)向下執(zhí) ?。
????????在Python中, input 接收?戶輸?后,?般存儲到變量,?便使?。
????????在Python中, input 會把接收到的任意?戶輸?的數(shù)據(jù)都當(dāng)做字符 串處理。
輸入的語法:
input("提示信息")快速體驗:
password = input('請輸?您的密碼:') print(f'您輸?的密碼是{password}') # <class 'str'> print(type(password))七、數(shù)據(jù)類型轉(zhuǎn)換
首先讓我們來想一下為什么要轉(zhuǎn)換數(shù)據(jù)類型呢?在前面我們說過input()接收的數(shù)據(jù)會被當(dāng)做字符串處理,當(dāng)我們沒有進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換時,我們用沒轉(zhuǎn)化的數(shù)據(jù)進(jìn)行運算有些時候會報錯,這時可以?類型轉(zhuǎn)換將字符串類型轉(zhuǎn)換為相應(yīng) 的數(shù)據(jù)類型。
?轉(zhuǎn)換數(shù)據(jù)類型的函數(shù)
?快速體驗:
# 1. 接收?戶輸? num = input('請輸?您的幸運數(shù)字:') # 2. 打印結(jié)果 print(f"您的幸運數(shù)字是{num}") # 3. 檢測接收到的?戶輸?的數(shù)據(jù)類型 -- str類型 print(type(num)) # 4. 轉(zhuǎn)換數(shù)據(jù)類型為整型 -- int類型 print(type(int(num)))八、運算符
python的運算符并沒有什么特別的,可以簡單的理解成數(shù)學(xué)里面的運算符
運算符的分類
算數(shù)運算符
賦值運算符
復(fù)合賦值運算符
?較運算符
邏輯運算符
?算數(shù)運算符
?混合運算優(yōu)先級順序: () ?于 ** ?于 * / // % ?于 + -
賦值運算符
?快速體驗:
單個變量賦值
num = 1 print(num)多個變量賦值
num1, float1, str1 = 10, 0.5, 'hello world' print(num1) print(float1) print(str1)多變量賦相同值
a = b = 10 print(a) print(b)復(fù)合賦值運算符
?快速體驗:
a = 100 a += 1 # 輸出101 a = a + 1,最終a = 100 + 1 print(a) b = 2 b *= 3 # 輸出6 b = b * 3,最終b = 2 * 3 print(b) c = 10 c += 1 + 2 # 輸出13, 先算運算符右側(cè)1 + 2 = 3, c += 3 , 推導(dǎo)出c = 10 + 3 print(c)?較運算符
?較運算符也叫關(guān)系運算符, 通常?來判斷。
?快速體驗:
a = 7 b = 5 print(a == b) # False print(a != b) # True print(a < b) # False print(a > b) # True print(a <= b) # False print(a >= b) # True邏輯運算符
?快速體驗:
a = 1 b = 2 c = 3 print((a < b) and (b < c)) # True print((a > b) and (b < c)) # False print((a > b) or (b < c)) # True print(not (a > b)) # True數(shù)字之間的邏輯運算
and運算符:只要有?個值為0,則結(jié)果為0,否則結(jié)果為最后?個數(shù)字
or運算符:只有所有的值為0,結(jié)果才為0,否則結(jié)果為第?個?0數(shù)字
a = 0 b = 1 c = 2 # and運算符,只要有?個值為0,則結(jié)果為0,否則結(jié)果為最后?個?0數(shù)字 print(a and b) # 0 print(b and a) # 0 print(a and c) # 0 print(c and a) # 0 print(b and c) # 2 print(c and b) # 1 # or運算符,只有所有值為0結(jié)果才為0,否則結(jié)果為第?個?0數(shù)字 print(a or b) # 1 print(a or c) # 2 print(b or c) # 1總結(jié)
以上是生活随笔為你收集整理的四、入门python第四课的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分享sina的短链生成java代码
- 下一篇: 寒假每日一题题解(1.29)摘花生(DP