在程序設計中,變量是一種存儲數據的載體。計算機中的變量是實際存在的數據或者說是存儲器中存儲數據的一塊內存空間,變量的值可以被讀取和修改,這是所有計算和控制的基礎。計算機能處理的數據有很多中類型,除了數值之外還可以處理文本、圖形、音頻、視頻等各種各樣的數據,那麼不同的數據就需要定義不同的存儲類型。Python中的數據類型很多,而且也允許我們自定義新的數據類型,我們先介紹幾種常用的數據類型。
變量和類型
整型
Python中可以處理任意大小的整數(Python 2.x中有int和long兩種類型的整數,但這種區分對Python來說意義不大,因此在Python 3.x中整數只有int這一種了),而且支持二進制(如0b100,換算成十進制是4)、八進制(如0o100,換算成十進制是64)、十進制(100)和十六進制(0x100,換算成十進制是256)的表示法。
浮點型
浮點數也就是小數,之所以稱爲浮點數,是因爲按照科學記數法表示時,一個浮點數的小數點位置是可變的,浮點數除了數學寫法(如123.456)之外還支持科學計數法(如1.23456e2)。
字符串型
字符串是以單引號或雙引號括起來的任意文本,比如'hello'和"hello",字符串還有原始字符串表示法、字節字符串表示法、Unicode字符串表示法,而且可以書寫成多行的形式(用三個單引號或三個雙引號開頭,三個單引號或三個雙引號結尾)。
布爾型
布爾值只有True、False兩種值,要麼是True,要麼是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運算計算出來(例如3 < 5會產生布爾值True,而2 == 1會產生布爾值False)。
複數型
形如3+5j,跟數學上的複數表示一樣,唯一不同的是虛部的i換成了j。
變量命名
對於每個變量我們需要給它取一個名字,就如同我們每個人都有屬於自己的響亮的名字一樣。在Python中,變量命名需要遵循以下這些必須遵守硬性規則和強烈建議遵守的非硬性規則。
硬性規則:
變量名由字母(廣義的Unicode字符,不包括特殊字符)、數字和下劃線構成,數字不能開頭。
大小寫敏感(大寫的a和小寫的A是兩個不同的變量)。
不要跟關鍵字(有特殊含義的單詞)和系統保留字(如函數、模塊等的名字)衝突。
PEP 8要求:
用小寫字母拼寫,多個單詞用下劃線連接。
受保護的實例屬性用單個下劃線開頭。
私有的實例屬性用兩個下劃線開頭。
變量類型進行轉換
int():將一個數值或字符串轉換成整數,可以指定進制。
float():將一個字符串轉換成浮點數。
str():將指定的對象轉換成字符串形式,可以指定編碼。
chr():將整數轉換成該編碼對應的字符串(一個字符)。
ord():將字符串(一個字符)轉換成對應的編碼(整數)。
運算符
運算符 | 描述 |
---|---|
[] [:]
|
下標,切片 |
** |
指數 |
~ + -
|
按位取反, 正負號 |
* / % //
|
乘,除,模,整除 |
+ -
|
加,減 |
>> <<
|
右移,左移 |
& |
按位與 |
<= < > >=
|
小於等於,小於,大於,大於等於 |
== !=
|
等於,不等於 |
is is not
|
身份運算符 |
in not in
|
成員運算符 |
鞏固練習
練習1:華氏溫度轉攝氏溫度。
#攝氏溫標(C)和華氏溫標(F)之間的換算關係爲:
#F=C×1.8+32
f=float(input("請輸入華氏溫度:"))
c=(f-32)/1.8
print('%.1f華氏溫度 =%.1f攝氏度' %(f,c))
練習2:輸入圓的半徑計算計算周長和麪積。
import math
radius=float(input("請輸入園的半徑:"))
perimeter=2*math.pi*radius
area=math.pi*radius*radius
print("周長:%.2f" %perimeter)
print("面積:%.2f" %area)
練習3:輸入年份判斷是不是閏年。
year=int(input("請輸入年份:"))
if (year % 4== 0) and (year % 400 == 0) or year % 100 !=0:
print("{}是閏年" .format(year))
else:
print ("{}是平年" .format(year))