Python 學習筆記(一)

1,下載並安裝開發環境-http://www.python.org/downloadpython

2,cmd->> python -v  測試python是否安裝app

3,文件擴展名:.py (python 控制檯 與 模塊), .pyw (python GUI程序)函數

4,python註釋以 測試

5,python所能表示的數據大小只受限於機器內存,而非固定數量的字節數編碼

6,python使用的是Unicode編碼spa

7,python使用[]來表示字符串序列中的某一項 如 'hello'[0]  結果:'h'code

8,python以0爲索引開始對象

9,python 數據轉換可使用 int() str() 若是轉換失敗會報異常blog

10,python 在類型轉換的時候 容許使用頭尾有空格 如:int(' 45 '):45  而str()是不會清除空格索引

對象引用

11,python 是動態類型,在任什麼時候候變量均可以引用一個不一樣類型   a=1  a="1"

12,可使用 type(var) 來獲取變量中存儲的數據類型

組合數據類型

13,python中的組合類型:元組與列表(能夠用來存儲任意類型的數據,【元組是固定的,建立以後就不能改變】,【列表是可變的,能夠插入移除數據項】)

14,元組使用(,)建立,若是元組中只有一個元素,也要在其後加上逗號,

>>> a='1','2',3
>>> a
('1', '2', 3)

可使用[]來訪問元組數據,空元組可使用()建立

>>> a[0]
'1'
>>> a[1]
'2'
>>> a[2]
3

15,列表可使用[]建立,空列表可使用[]建立

>>> b=[1,2,3,4,5]
>>> b
[1, 2, 3, 4, 5]
>>> b[0]
1

16,實質上元組和列表並不存儲數據項,而是存放對象的引用

17,len()函數能夠獲取數據項的長度,(字符串,元組,列表等),若是傳入不能用len()使用的數據項,將拋出異常

18,append()函數的使用

>>> b.append(6)
>>> b
[1, 2, 3, 4, 5, 6]

另外一種使用append的方式,相似的方法有insert(),remove()

>>> list.append(b,7)
>>> b
[1, 2, 3, 4, 5, 6, 7]

邏輯操做符

身份操做符

19, is 操做符   ,is 只是對對象所在的內存進行比較,相同的地址存儲的是相同的對象,一般 is 用於與None的比較,None表示「未知的」,"不存在的"

is 的反向操做符,is not : a is not None,b is None返回的是Bool類型

is操做符的做用是查看兩個對象引用是否指向相同的對象,或查看某個對象是否是None

>>> a=1
>>> b="1"
>>> a is b
False

比較操做符

20,>,<,<=,>=,!=,==,字符串和數字之間沒法進行比較,True==1,False==0

>>> c=1
>>> d=1
>>> c is d
True
>>> c==d
True
>>> a=(1,2,3,4)
>>> b=(1,2,3,4)
>>> a is b
False
>>> a==b
True
>>> a=""
>>> b=""
>>> a is b
True
>>> a==b
True
>>> a=True
>>> b=True
>>> a is b
True
>>> a==b
True
>>> False ==0
True
>>> True==1
True

成員操做符

 21,in操做符,用於元組,列表,字符串

(對於列表元組,in使用的是線性搜索,對於數萬個數據項時會比較慢

(對於字典集合,in操做是很是快的)

>>> a=["1"]
>>> 1 in  a
False
>>> "1" in  a
True

  

>>> a="hello world"
>>> "hello" in a
True
>>> "ho" in a
False

  

>>> a=[0,1]
>>> True in a
True
>>> False in a
True

邏輯運算符

22,and or not,

若是是兩個數字使用and,若是兩個數都!=0,取最後值,若是兩個數中有一個爲0,那麼取另外一個數,若是有一個數爲0,那麼返回0

若是是兩個數字使用or,  若是兩個數都!=0 , 取第一個值, 若是兩個數中有一個爲0,那麼取另外一個數,若是兩個數都是0,那麼返回0

若是一個數爲0,那麼not 後爲 1,若是一個數不爲0,那麼not後爲0

流程控制

23,if語句--每條語句後都要使用: 而且縮進來控制流程

>>> if a>0:
    print(a)
elif a<10:
    print(a)
elif a>=10:
    print(a)
else:
    print(a)

1

24,while語句

>>> while a>0:
	print(a)
	a=a-1

10
9
8
7
6
5
4
3
2
1

25,for....in...

  

>>> a=["1","2","3"]
>>> for item in a:
	print(item)
1
2
3

異常處理

>>> s="ABC"
>>> try:
	i=int(s)
	print(i)
except ValueError as err:
	print(err)

invalid literal for int() with base 10: 'ABC'

 

try:
	i=int(s)
	print(i)
except ValueError as err:
	a=1

 算數運算符 

26,+-*/,+=,-=,*=,/=,(a operator =b 要比 a=a operator b 效率更高,它只查詢一次a的值)

    /返回的是一個浮點型數據,若是須要返回整數值,可使用//或者int()

27,int類型是固定的,一旦賦值就不能改變

28,str類型也是固定的,在使用+=後會從新建立一個新的字符串,(列表一樣支持+=,可是列表不是固定的)

固定的數據類型比可變的數據類型更高效

>>> a="hello"
>>> a+="world"
>>> a
'helloworld'
>>> a=[1,2,3,4,5]
>>> a+=[6]
>>> a
[1, 2, 3, 4, 5, 6]

 使用對象和非對象的區別

>>> a=["hello","world"]
>>> a+="baby"
>>> a
['hello', 'world', 'b', 'a', 'b', 'y']

  

>>> a=["hello","world"]
>>> a+=["baby"]
>>> a
['hello', 'world', 'baby']

輸入輸出

29,input()用於接受用戶輸入。print()用於打印數據到控制檯

若是用戶不輸入任何數據,只是按Enter,那麼input()函數會返回空字符串

 

在將python重定向到文件時須要捕捉 EOFError

函數的建立與調用

30,函數的建立,函數默認返回None,除非有return Value;

>>> def get_int(msg):
	while True:
		try:
			i=int(input(msg))
			return i
		except ValueError as err:
			print(err)

>>> money=get_int("give me money")
give me moneya
invalid literal for int() with base 10: 'a'
give me money1
>>> money
1

31,模塊導入 import sys

python模塊實際上就是包含Python代碼的.py文件。好比自定義函數與類的定義。

有時候還包含變量等,要使用這些模塊就要先導入該模塊

 

不一樣的數據類型進行比較時會發生TypeError異常

相關文章
相關標籤/搜索