Python快速入門(二)
- 2019 年 10 月 11 日
- 筆記
引言
Python作為一個,目前最火的編程語言之一,已經滲透到了各行各業。它易學好懂,擁有着豐富的庫,功能齊全。人生苦短,就用Python。
這個快速入門系列分為六篇,包含了Python大部分基礎知識,每篇閱讀時間不長,但內容含量高。大家最好親自碼一遍代碼,這樣可以更有收穫。
概要
1、掌握Python中的基本變量,學會查看變量類型;
2、掌握Python中的格式化字符串,讓你打印得心應手;
3、掌握Python中的轉義序列,輕鬆應對換行等特殊符號打印的問題。
變量
變量對於程序而言是核心,如何使用好變量就成了關鍵所在。先說下給變量起名的問題,在代碼量少的時候,我們可以用簡單的方法,給變量命名。但是,當變量很多的時候,我們要儘可能地使用有意義的名字,讓這個變量的意思變得明顯。看過別人代碼的,應該感受頗深。
我們列舉兩種常用的給變量取名字的方法:
- 縮寫
- 加下劃線
代碼:
stud_male = 46
stud_female = 54
student = stud_male + stud_female
print (student)
講解:
假設一個班上有46位男同學和54位女同學,我們想用程序求這個班上學生的總數,我們在給男女同學變量命名的時候分別用stud_male和stud_femal,這裡stud就是student的縮寫,下劃線_可以看成起到空格的作用,用來隔開單詞。
在盡量通過命名來賦予變量意義的時候,大家也不要忘了用注釋來給變量釋義。
字符串變量
什麼是字符串?我們把字符串裏面的數字,字母或者符號叫做字符,連一起串成串,就成了字符串。用來幹啥呢?通過字符串,我們可以把英語字母組成單詞,也可以把漢字組成一句話,這就是字符串常見的用途。
字符串變量的創建需要用單引號或者雙引號,二者一般情況下都是可以的。
代碼:
string1 = 'Hello World!'
string2 = "How are you?"
print (string1)
print (string2)
講解:
我們定義了兩個字符串變量,string1和string2,左邊是變量名,右邊是變量內容。我們分別用單引號和雙引號創建。注意引號是不可或缺的。
整數型變量和浮點型變量
看到這個小標題,大家應該猜出來,整數型和浮點型變量是拿來計算用的,其中浮點類型變量是用來存儲帶有小數的實數。但是,為什麼要這麼劃分呢?原來,計算機的計數方式是二進制的,而我們常用的是十進制,要想用二進制方法表示十進制中帶有小數的實數,需要花上一定功夫。在計算機系統的發展過程中,曾經提出過多種方法表示實數,但是到目前為止使用最廣泛的是浮點表示法。
代碼:
num1 = 100
num2 = 100.0
print (type(num1))
print (type(num2))
講解:
我們分別用了100和 100.0來給變量賦值,這裡我們給大家介紹一個技巧,用type函數來查看變量的類型,推薦大家對比把握不準的變量先用這個函數來查看變量類型。
通過打印結果,你會發現,num1的類型是整數型,記作int;而num2是浮點型,記作float。
運行結果:
100
Hello World!
How are you?
<class 'int'>
<class 'float'>
練習題:
1,如果小明有三個蘋果,兩個梨子和四個西瓜,用變量分別表示,並求小明一共有多少個水果。
2,打印英語課本經典對話,How are you? I am fine, thank you, and you?
3,分別查看 num = 7/4 和num = 7.0/4的結果和變量類型。
格式化字符串
有了字符串,我們就可以打印一段話。但是,我們想將事先定義好的變量加進去,該如何做到呢?比如說,我們事先定義蘋果數量,是一個整數型變量。然後我們想打印的時候,直接引用這個變量,用來告訴大家我們有多少蘋果。答案便是格式化字符串,用一個標記指代變量,融入字符串中。
代碼:
stud_male = 46
stud_female = 54
print ('Number of male students is %d and female is %d.' %(stud_male,stud_female))
講解:
在這段代碼中,我們用了兩次格式化字符串,第一個%d用來指代stud_male,第二個%d用來指代stud_female。完成格式化字符串有兩個步驟:
- 在要打印的話也就是引號裏面中用%d指代變量,佔住位置
- 然後在引號外面再用%引出真正的變量。
如果在一段話中使用多個格式化字符串,引號外面的變量需要放在圓括號中,變量之間用逗號隔開。
常用的格式化字符串
剛剛我們用了%d來指代整數變量。我們把幾種常見的格式化字符串總結一下:
- %d指代整數型變量
- %s指代字符串變量;
- %f指代浮點數變量;
- %r可以指代任何類型變量。
代碼:
string1 = "apple"
int1 = 2
float1 = 30.14
print ('I bought %d %ss and paid %07.3f dollars.' %(int1,string1,float1))
print ('I bought %r %rs and paid %r dollars.' %(int1,string1,float1))
講解:
在這個例子中,我們把四種格式化字符串都用上了,打印同一個內容,目的比較它們用法上的區別:
- 對於apple的打印,第二句話中%r結果比第一句話的%s多了單引號,等於說把變量本身整體打印下來了;
- 對於float1的打印,第一句話中%f相比於第二句話的%r多了四個0。
究其原因,%r相對比較特殊,它使用rper()方法處理對象,對於字符串變量輸出會帶有單引號,而%s是用str()方法處理對象,不會出現單引號。
另外%f的使用可以通過增加一個小數數字來控制小數點輸出位數,例如%06.2f會打印寬度6的2位小數。
運行結果:
The number of male students is 46 and female is 54.
I bought 2 apples and paid 030.140 dollars.
I bought 2 'apple's and paid 30.14 dollars.
練習題:
1,先輸入代碼:
import date time;
time =datetime.date.today()
然後在一句話中用%r和%s分別打印time,查看並思考二者區別。
轉義序列
轉義序列這個詞可能聽起來拗口,但是它其實功能很單純,是針對編程語言中一些特殊符號的打印問題而誕生的。
大家可以嘗試這樣的代碼print (『I』m a superman』)。事實上,你會遇到如下的報錯信息:語法錯誤 (invalid syntax)。因為引號本身已經被賦予了一個意義,當你想要打印引號的時候,只需要在前面加一個反斜桿,就沒有問題了。
代碼:
print (' I'm a superman ')
講解:
引號裏面打印引號有問題,這時候我們只需要在裏面的引號前面加一個反斜杠就可以實現打印出引號。我們將這些需要加一個反斜杠來表示的特殊字符叫做轉義序列。
我們將常見的轉義序列總結在了下面的表格當中:

除了用反斜桿,我們還可以用三重引號,來實現轉義序列:
代碼:
print (''' I'm a superman ''')
講解:
三重引號作用是將引號內部的符號當成轉義序列,這時候不需要用到放斜杠進行轉義序列的轉換。
運行結果:
I'm a superman
I'm a superman
練習題:
1,使用轉義字符打印一段英文對話,需要配上人物以及冒號。
2,使用三重引號打印一段英文對話,需要配上人物以及冒號。