Python基礎知識(1)

運算符

位移:  2<<3    將十進制轉成二進制並向左移動3位(增大)

            2 >>3   將十進制轉成二進制並向右移動3位(減小)
比較:  <、>、<=、>=、!=

按位或:  |            兩個二進制相同位置都爲0則得0,其他情況都爲1

按位與:  &          兩個二進制相同位置都爲1則得1,其他情況都爲0

按位異或:  ^       兩個二進制相同位置不相等時爲1,相等爲0

運算符優先級: 單目>雙目>比較>邏輯

Python數據類型

列表:

L.append(object)、L.extend(object)、L.pop(index)、L.insert(index,object)、L.remove(object)、L.count(object)、L.index(index)、L.sort順序、L.reverse倒序

ps.index 和 remove要做判斷或者錯誤捕捉

列表切片(li2=li 與 li2=li[:] 不一樣,前者若修改列表則兩個列表都被修改)

list[:]                      整個列表切片

list[2:5]                  index=2,3,4的元素

list[::-1]=L.reverse

list[::2]                   index爲奇數的元素

list[1::2]                 index爲偶數的元素

元組

元組不可更改元素

t = (2,)  若只有一個元素必須加逗號

元組切片(t2=t 與 t2=t[:] 一樣,一個修改兩個都修改)

集合

集合的元素是唯一的、無序的,元素可以是元組,但不能是列表

s.difference = s - s1                  差集

s.intersection = s & s1             交集

             s | s1                            並集

s.add()                                      添加元素

s.update([200,100])                 並不是將列表加到集合,而是將列表裏的元素加到集合

s.discard 和 s. remove一樣,但元素不存在時discard不會報錯                

字典:

d = {'key':'value'}

d.keys()                       以列表方式返回字典中的鍵      

d.values()                    以列表方式返回字典中的值      

d.items()                     以列表方式返回字典中的鍵值對

d.iterkeys()                 以迭代器對象返回鍵 

d.itervalues()              以迭代器對象返回值

d.iteritems()               以迭代器對象返回鍵值對

d.get(key,value)         若key存在返回真實value,不存在則返回value    

d.has_key(key)           若key存在返回true,不存在則返回false

d[key] = 'value'          若key存在將更改原來的value,不存在則新增key:value

d.copy()                      可d1 = d.copy(),將d的key:value拷貝到d1

將目錄內容解析成迭代器:

for k,v in d.items():

    print k,v

迭代器:

迭代器>列表解析>for循環

for循環可以跟列表是因爲它自動將列表轉化爲迭代器:

li = [1,2,3,4]

it = iter(li)

列表解析:

li = [1,2,3,4]

li2 = [i+1 for i in li ]          等同於

j=0

for i in li:

    li2[j] = i+1

    j += 1


li2 = [i+1 for i in li if i%2 == 0]         等同於

for i in li:

    if i%2 == 0:

        li2.append(i+1)                   ###使用這種形式需要定義li2爲一個空列表


li2 = [i+1 for i in li if i%2 == 0 if i >3]  =  Li2 = [i+1 for i in if i%2 == 0 and i >3]                                                                                                                               等同於

for i in li:

    if i%2 == 0 and i>3:

        li2.append(i+1)                   ###使用這種形式需要定義li2爲一個空列表


列表空li = []   元組空 t = ()   集合空 s = set()   字典空 d = dict()


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