1. 程式人生 > >python學習整理(1)

python學習整理(1)

#!/usr/bin/env python
# -*- conding:utf-8 -*-
1、
python運算:
+  -  *   /   %   **   //
In [21]: print(int(1.2)+3)
4

In [22]: print(float(1.2)+3)
4.2
In [15]: print(11//5)
2

In [16]: print(11.0//5.0)
2.0


In [18]: print(int('2')+3)
5


In [32]: apple=1

In [33]: print(apple)
1

In [34]: apple_egg = 10

In [35]: print(apple_egg)
10

In [36]: appleEgg = 12 + 3 

In [38]: print(appleEgg)
15
  

定義多個變數:
In [39]: a = 1 

In [40]: b = 2 

In [41]: c = 3
a
In [42]: print(a,b,c)
(1, 2, 3)

In [43]: d,e,f = 4,5,6

In [44]: print(d,e,f)
(4, 5, 6)

自變數中運算:
In [39]: a = 1 

In [40]: b = 2 

In [41]: c = 3

In [42]: print(a,b,c)
(1, 2, 3)

In [43]: d,e,f = 4,5,6

In [44]: print(d,e,f)
(4, 5, 6)


In [45]: a = 1 

In [46]: b = a * 2 

In [47]: print(a,b)
(1, 2)


while迴圈:
for迴圈:   
當滿足什麼的時候做什麼事?
condition

while True:
  False
w
In [49]: condition = 1
In [51]: while condition < 10:
    print(condition) 
    condition = condition+1
   ....:     
1
2
3
4
5
6
7
8
9

condition = 1
while condition < 10:
     print(condition)
     condition += 1

In [55]: while True:
    print("I'm True")

In [55]: while True:
    print("I'm True")
..................
...........
.......
一直迴圈下去:


運算子:
賦值運算子    =    +=     -=    *=    /=     %= 
算術運算子    + -  *  /  %    **   //
In [19]: 4.0 / 3 
Out[19]: 1.3333333333333333

In [20]: 4.0 // 3 
Out[20]: 1.0
關係運算符:  >   <   >=   <=   ==  != 
True    False
邏輯運算子:      邏輯與 and             邏輯或 or          邏輯非  not
True   False
True   and   True       當兩個表示式都成立,才會返回Ture.   否則為  Flase
False  and   True       其中一個表示式成立,返回True.    兩個都不成立時為 False.
not   Flase             取反,本來是True的為 Flase       本來是Flase 為 True.

help(list)

input()        接收的是表示式,更適合數字;  而字串需要用單引號或者雙引號 引起來了。
raw_input()   接收的是字串,無論你輸入什麼,都會當成字串了。
In [70]: name = input("you name is :")
you name is :'yuanhh'

In [71]: print(type(name))
<type 'str'>

In [72]: name1 = raw_input("you name is :")
you name is :yuanhh

In [73]: print(type(name1))
<type 'str'>

In [74]: name1 = raw_input("you name is :")
you name is :123

In [75]: print(type(name1))
<type 'str'>

數值型別:   字串str     整數int    浮點數float    長整數 long        複數 j    complex

序列:  字串     元組tuple   列表
針對序列可以使用切片或者索引的操作的。
索引:快速查詢,取一個字元;
從左開始第一個字元為0,依次;                從右開始第一個字元為-1,依次;
a = 'abcde'    a[0]      a[-1]

切片:    取一組字元;比如我們需要取某兩個字元:  ab
可以使用連線符 +       a[0]+a[1]
也可以使用切片:    a[0:2]    a[:2]    
a[:]

a[::2]
這裡的 2 表示步長;表示隔兩步一取。

取bc:       a[1:3]             a[-4:-2]

序列命令:    len    +  *  min()    max()    cmp(x,y)
len(a)      判斷字串的長度;
a+'f'

'#' * 20
b in 'a'      在則True     不在False

s not in 'a'    取反

max()和 min() 僅僅支援序列  字串型別


a = 1   b = 2 
cmp(a, b)
如果a>b 則返回正整數           如果a<b 返回負數       如果a=b  則返回0 
 
tuple   接收函式的返回值

t = ('a',1,(1,2),[1,2,3])
first, second, third, fourth = t

A, B, C, D = t

list
list = {}
list2 = list()


list 引數:   list.append   list.count
list.apend()   給空列表增加內容
list3[2].append()   給新增到列表的空列表根據下標增加內容
list.sort()  排序
list.reverse()      反向排序
list.remove(value)  刪除
list.pop(下標)      刪除還會顯示在螢幕上
list.insert(下標,新的列表名)    增加空列表
list.index(value)   根據value值來返回下標
list.extend(value)      新增迭代物件
list.count(value)       判斷值是否在列表,在則放回整數,不在則返回0.


dict
key  value
key鍵值不可變     可以是字串  元組  整數, 不可以是list,因為list的值是可變的。
value可變  


dict   字典

dic = {'a':1, 1:123}


 
dic.keys()      所有keys值  返回一個list

dic.values()    所有values值   返回一個list

dic.items()     把字典轉換成列表list形式的。

dic.get(key)    根據key返回value;
dic.has_key(key)   判斷key值是否在字典,在則True ,不在則False.
dic.pop(key)       刪除這個key值,返回到桌面;
dic.update(dic1)   裡面跟一個字典名稱,用來把兩個字典合併成一個字典,  dic1 並不會消失;

 
help(dic.get)


改變dict的value值:   dic[2] = 3 


in  判斷某個值是否在dict裡
a in dic

dic.copy()  字典複製       dic3 = dic2.copy()


建立字典的方法:
dic = {'ab':1, 'cd':2}

檢視字典:
dic[2]

dic.items()


用for來檢視:
for k in dic:
    print k

for k in dic:
    print k  dic[k]

for k,v in dic.items():
    print "%s:%s" % (k