好程序員Python教程系列分享之Python語言元素之變量

  好程序員Python教程系列分享之Python語言元素之變量,經常被外行問到兩個問題,其一是“什麼是(計算機)程序”,其二是“寫(計算機)程序能做什麼”,這裏我們先來回答這兩個問題。程序是指令的集合,寫程序就是用指令控制計算機做我們想讓它做的事情。那麼,爲什麼要用Python語言來寫程序呢?因爲Python語言簡單優雅,相比C、C++、Java這樣的語言,Python對初學者更加友好,當然這並不是說Python不像其他語言那樣強大,Python幾乎是無所不能的,還能用來粘合其他語言開發的系統,所以也被戲稱爲“膠水語言”。
  一些計算機常識
計算機的硬件系統通常由五大部件構成,包括:運算器、控制器、存儲器、輸入設備和輸出設備。其中,運算器和控制器放在一起就是我們通常所說的中央處理器,它的功能是執行各種運算和控制指令。剛纔說過了,程序是指令的集合,寫程序就是將一系列的指令按照某種方式組織到一起,然後通過這些指令去控制計算機做我們想讓它做的事情。今天我們大多數人使用的計算機都是“馮·諾依曼體系結構”的計算機,這種計算機有兩個關鍵點:一是要將存儲設備與中央處理器分開;二是將數據以二進制方式編碼。
  二進制是一種“逢二進一”的計數法,跟我們人類使用的“逢十進一”的計數法沒有實質性的區別,人類因爲有十根手指所以使用了十進制,因爲在數數時十根手指用完之後就只能進位了。當然凡事都有例外,瑪雅人可能是因爲長年光着腳的原因把腳趾頭也算上了,於是他們使用了二十進制的計數法,在這種計數法的指導下,瑪雅人的歷法就與我們平常使用的歷法不一樣。按照瑪雅人的歷法,2012年是上一個所謂的“太陽紀”的最後一年,而2013年則是新的“太陽紀”的開始,後來這件事情被以訛傳訛的方式誤傳爲”2012年是瑪雅人預言的世界末日“的荒誕說法。今天很多人都在猜測,瑪雅文明之所以發展緩慢跟使用了二十進制是有關係的。對於計算機來說,二進制在物理器件上來說是最容易實現的(高電壓表示1,低電壓表示0)。不是說寫程序的人必須都需要知道十進制與二進制如何相互轉換,大多數時候我們也用不上這些知識,但是我們必須要知道的是我們的計算機使用二進制,不管什麼數據到了計算機內存中都是以二進制形式存在的。
  變量和類型
在程序設計中,變量是一種存儲數據的載體。簡單的說,變量是保存數據的一塊內存空間,變量的值可以被讀取和修改,這是所有計算和控制的基礎。計算機能處理的數據有很多種類型,除了數值之外還可以處理文本、圖形、音頻、視頻等各種各樣的數據。雖然最終數據都是以二進制的形態存在的,但是我們可以用不同類型的變量來表示數據類型的差異。Python中的數據類型很多,而且也允許我們自定義新的數據類型(這一點在後面會講到),我們先介紹幾種常用的數據類型。
  整型(int):Python中可以處理任意大小的整數,而且支持二進制(如0b100,換算成十進制是4)、八進制(如0o100,換算成十進制是64)、十進制(100)和十六進制(0x100,換算成十進制是256)的表示法。
  浮點型(float):浮點數也就是小數,之所以稱爲浮點數,是因爲按照科學記數法表示時,一個浮點數的小數點位置是可變的,浮點數除了數學寫法(如123.456)之外還支持科學計數法(如1.23456e2)。
  字符串型(str):字符串是以單引號或雙引號括起來的任意文本,比如'hello'和`"hello"。
  布爾型(bool):布爾值只有True、False兩種值,要麼是True,要麼是False。
  變量命名
對於每個變量我們需要給它取一個名字,就如同我們每個人都有屬於自己的響亮的名字一樣。在Python中,變量命名需要遵循以下這些規則和注意事項。
  變量名由字母(廣義的Unicode字符,不包括特殊字符)、數字和下劃線構成,數字不能開頭。
  大小寫敏感(大寫的a和小寫的A是兩個不同的變量)。
  不要跟關鍵字(有特殊含義的單詞,後面會講到)和系統保留字(如函數、模塊等的名字)衝突。
  當然,作爲一個專業的程序員,給變量命名時做到見名知意也是非常重要的。
  變量的使用
下面通過幾個例子來說明變量的類型和變量使用。
  """
  使用變量保存數據並進行加減乘除運算
  Version: 0.1
  Author: 駱昊
  """
  a = 321
  b = 12
  print(a + b) # 333
  print(a - b) # 309
  print(a * b) # 3852
  print(a / b) # 26.75
  在Python中可以使用type函數對變量的類型進行檢查。程序設計中函數的概念跟數學上函數的概念是一致的,數學上的函數相信大家並不陌生,它包括了函數名、自變量和因變量。如果暫時不理解這個概念也不要緊,我們會在後續的內容中專門講解函數的定義和使用。
  """
  使用type()檢查變量的類型
  Version: 0.1
  Author: 駱昊
  """
  a = 100
  b = 12.345
  c = 'hello, world'
  d = True
  print(type(a)) #
  print(type(b)) #
  print(type(c)) #
  print(type(d)) #
  可以使用Python中內置的函數對變量類型進行轉換。
  int():將一個數值或字符串轉換成整數,可以指定進制。
  float():將一個字符串轉換成浮點數。
  str():將指定的對象轉換成字符串形式,可以指定編碼。
  chr():將整數轉換成該編碼對應的字符串(一個字符)。
  ord():將字符串(一個字符)轉換成對應的編碼(整數)。
  下面的例子爲大家演示了Python中的類型轉換。
  """
  Python中的類型轉換
  Version: 0.1
  Author: 駱昊
  """
  a = 100
  b = 12.345
  c = 'hello, world'
  d = True
  # 整數轉成浮點數
  print(float(a)) # 100.0
  # 浮點型轉成字符串 (輸出字符串時不會看到引號喲)
  print(str(b)) # 12.345
  # 字符串轉成布爾型 (有內容的字符串都會變成True)
  print(bool(c)) # True
  # 布爾型轉成整數 (True會轉成1,False會轉成0)
  print(int(d)) # 1
  # 將整數變成對應的字符(97剛好對應字符表中的字母a)
  print(chr(97)) # a
  # 將字符轉成整數(Python中字符和字符串表示法相同)
  print(ord('a')) # 97
  總結
在Python程序中,我們可以使用變量來保存數據,變量有不同的類型,變量可以做運算(下一課會有詳細的講解),變量還可以進行類型轉換。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章