Python 從Zero到Hero(一)
21CTO社區導讀:
各位同學,Python是什麼? 是一條蛇?如果是,它也是一條可愛的聰明的小蛇。
它和Java,PHP,Perl等一樣,是一門計算機語言。
它的發明者是Guido van Rossum,他是這樣描述Python的:
Python是一門高級編程語言。它的核心理念是關注代碼和語法和可讀性,它允許程序員用少量代碼表達編程概念。
對我來說,學Python的第一理由是,它是一個好看的編程語言,寫代碼就像寫文章一樣自然表達。
還有一個原因是,我們可以用Python很好的完成工作,比如數據挖掘、Web開發和機器學習等領域都能做得很棒。 Quora,Google,Pinterest和Spotify都在用Python進行後端Web開發。國內如Douban,Toutiao等公司也是使用Python做後端應用開發。
有一句話:「人生苦短,我用Python」。用了Python,上下樓不費勁兒,對得起咱這張臉,我們一起來了解它。
Python基礎
1 變數
您可以將變數看作是一個存儲值的單詞——就是這麼簡單。
在Python中,定義一個變數並給它賦一個值是很容易的。我們想像一下,把數字1存儲到一個名叫one的變數中。
我們這樣來做,來看如下代碼:
one = 1
是不是很簡單?我們這樣就將值1分配給了變數one。
two = 2
some_number = 10000
你也可以給其它任何變數賦值。比如上面的,變數「two」存儲了整數2,「some_number」存儲了整數10000.
除了保存整數外,我們還可以使用布爾值(true/false),字元串,浮點數等多種數據類型。
#布爾值
true_boolean = True
false_boolean = False
#字元串
my_name = 「Raymond」
#浮點型
book_price = 15.80
2 控制流程:條件處理
使用if 語句來評估表達式是True還是False。如果它是True,它會執行if語句體里的內容。如下代碼:
if True:
print(「Hello Python If」)
print(「2 if greater than 1」)
因為2大於1,所以執行了print代碼。
如果if 的表達式為false,則會執行else語句。
print(「1is greater than2」)
else:
print(「1 is not greater than 2」)
1不會大於2,所以else語句中的代碼將被執行之。
你也可以使用 elif 語句:
print("1 is greater than 2")
elif 2 > 1:
print("1 is not greater than 2")
else:
print("1 is equal to 2")
3 循環/迭代器
在Python中,我們可以用幾種不同形式進行迭代循環。我們將介紹兩個while和for。
While循環:當條件為True時,語句體內的代碼將被執行。所以,此代碼將列印出數字1到10。
num = 1
while num
print(num)
num+= 1
while需要一個「循環條件」。如果條件保持為True,它將繼續迭代。在這個代碼例子中,當num 是11,循環條件等於 False。
我們來看一個基礎代碼,可以更好的理解它:
loop_condition = True
while loop_condition:
print(「Loop Condition keeps: %s」%(loop_condition))
loop_condition = False
循環條件是True,所以它保持迭代,直到我們將它設置為False。
對於循環:把變數「num」應用於語句塊,「for」語句將繼續迭代。此代碼將繼續列印與前面代碼類似的結果:1到10。
for i in range(1, 11):
print(i)
我們看到,很簡單的代碼。功能是範圍從1開始,到第11個數字,列印完成。
4列表:集合 | 數組 | 數據結構
我們一起考慮一下,我們想把整數1存儲在一個變數中,但是我們想存儲2,3,4,5…這些數值想都放在一個變數里怎麼辦?
我們當然可以用另一種方法來存儲想要的整數,但是不能是數以百萬計的變數。 你猜對了,有另一種方法來存儲它們。
列表List就是一個用來保存一組數據的集合,像我們想要的這些整數一樣。我們這樣使用它:
my_integers = [1, 2, 3, 4, 5]
是不是很簡單。我們一起創建了一組數據並把它存儲在my_integer數組上。
我們該怎樣從數組中獲取值呢? 挺好的問題。 List有一個叫做索引的概念。第1個元素的索引值為0,第2個為1,依此類推,相信你明白了。
為了更清晰,我們可以用索引 來表示數組和每個元素。我把它畫出圖來:
使用Python的語法,也挺好理解:
my_integers = [5, 7, 1, 3, 4]
print(my_integers[0]) # 5
print(my_integers[1]) # 7
print(my_integers[4]) # 4
我們也許不想只存儲整數,也許只想存儲字元串,就象親友的名字列表一樣。
relatives_names = [
"Toshiaki",
"Juliana",
"Yuji",
"Bruno",
"Kaio"
]
print(relatives_names[4]) # Kaio
它的工作方式與整數相同。
我們剛剛學習了List索引如何工作。下面向大家介紹如何將元素添加到List數據結構中(一個元素添加到列表)。
在Python中,將一個新值添加到List的常見方法是append。我們一起來看它是如何工作的:
bookshelf = []
bookshelf.append("The EffectiveEngineer")
bookshelf.append("The 4 Hour WorkWeek")
print(bookshelf[0]) # The EffectiveEngineer
print(bookshelf[1]) # The 4 Hour Work Week
append語句簡直是超級簡單。你只要將元素(如「有效率的工程師」)做為append參數。
到此為止,我們對Lists列表的理解已經夠了。接下來我們談下一個數據結構。
5 字典 Dictionary:鍵-值數據結構
現在,我們知道列表Lists是使用整數索引的。但是有時候我們不想用整數作為索引呢?當然,Python提供了一個數據結構,可以讓索引是數字、字元串或其它 數據類型。
讓我們來了解一下Dictionary字典數據結構。Dictionary是鍵值對的集合。下面是它的樣子:
dictionary_example = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
}
鍵名指向索引的值。我們怎麼訪問Dictionary中的值?你猜對了,我們用Key,我們來試試看:
dictionary_ex = {
"name": "Raymond",
"nickname": "Luoyi",
"nationality": "China"
}
print("My name is %s"%(dictionary_ex["name"])) # My name is Raymond
print("But you can call me %s"%(dictionary_ex["nickname"])) # But you can call me Luoyi
print("And by the way I"m %s"%(dictionary_ex["nationality"])) # And by the way I"m China
我創建了一個關於我自己的Dictionary,包括我的名字,昵稱和國籍,都以鍵名的方式保存在Dictionary字典中。
我們已經一起學習了使用索引來訪問List,我們也使用索引(Dictionary上下文的鍵)來訪問保存在Dictionary的值。
在這個例子中,我引用了Dictionary存儲的值列印一個關於我的短語。很簡單對吧?
Dictionary另一個很酷的事是,我們可以使用任何東西做為值。創建了Dictionary,我們想添加一個key為「age」和我真正年齡的整數值:
dictionary_ex = {
"name": "Raymond",
"nickname": "Luoyi",
"nationality": "China",
"age": 38
}
print("My name is %s"%(dictionary_ex["name"])) # My name is Raymond
print("But you can call me %s"%(dictionary_ex["nickname"])) # But you can call me Luoyi
print("And by the way I"m %i and%s" %(dictionary_ex["age"], dictionary_tk["nationality"]))# And by the way I"m China
這裡,我們有一個鍵(key)和值(24),做為字元串的鍵和整數作為值。
和我們對Lists所做的一樣,我們學習如何將元素添加到Dictionary。Key指向一個值是Dictionary的重要組成部分。當我們添加元素時,也是如此:
dictionary_ex = {
"name": "Raymond",
"nickname": "Luoyi",
"nationality": "China"
}
dictionary_ex["age"] = 24 #add new item
print(dictionary_ex) # {"nationality": "China", "age": 38, "nickname": "Luoyi", "name": "Raymond"}
我們只需給一個Dictionary分配一個key和值。沒有什麼複雜的,對吧?
作者:21CTO社區
說明:本站原創作品。Python開發系列文章,敬請期待。
TAG:Python |