1. 程式人生 > >廖雪峰Python筆記[1] - 運算和資料結構

廖雪峰Python筆記[1] - 運算和資料結構

目錄

 

1 輸入輸出

2 布林運算

3 四則運算

4 list和tuple 

5 dict和set


1 輸入輸出

       輸出:逗號被空格代替,print也可以進行簡單的計算,字串前加r表示不轉義,raw的意思。用''' '''寫的字串會省去寫\n的煩惱。

print('逗號','被空格','代替')
print(100 + 200)
print(r'this\'re not sth useful.')
print('''這裡呢
可以表示
多行''')

輸入:input中傳入的字串是提示資訊,返回使用者輸入的內容。

myname = input("請輸入你的名字:")
myage = int(input("請輸入你的年齡:")) #input返回的是str,需要轉換為int
print(myname)
print(myage)

2 布林運算

print(True and False)
print(False or True)
print(not True)

3 四則運算

除法有兩種,/的結果是一個浮點數,//叫地板除,只取結果的整數部分,對應的就有了%取餘。

print(10 / 3)
print(10 // 3)
print(10 % 3)

4 list和tuple 

       列表是有序可變的,它的正向索引從0開始,負向索引從1開始,新增元素有append和insert方法,刪除元素有pop方法,修改元素直接賦值修改即可。列表內的元素型別不必相同,甚至可以是列表,這樣就得到一個二維陣列。

water = ['blue','white','orange']
print(water[0]) #索引從0開始
print(water[-1]) #用負號從最後開始索引,從1開始
water.append('purple') #list是可變的
water.insert(2,'black') #在索引號為2的位置插入
print(water)
water.pop() #刪除最後一個元素
water.pop(1) #刪除索引號為1的元素
print(water)
water[1] = 'green' #替換元素
print(water) 

go = ['china',['USA','Texas'],12]
print(go[1][0])

       還有一種有序表叫tuple,只是它的內容在定義時就要確定而且之後不能修改。這裡的不可修改是指tuple的指向不變,加入元素是一個列表,那麼就能得到一個“可變”的tuple。

poem = ('one','sky','stars','road','summer')
print(poem)
puzzle = (4,) #在定義只有一個元素的tuple時要加逗號,消除歧義
print(puzzle)

list(range(6)) #產生從0開始的6個整數

5 dict和set

      dict是鍵值對的組合,它的查詢和插入速度很快,但是佔用記憶體較多。dict的key必須是不可變物件,比如str、整數等,list就不能作為key。key也不能重複。

song = {'fir':'sun','sec':'blue','thr':'viva'}
print(song.get('fir')) #查詢某個key
print(song.get('for',"no such song")) #如果沒有找到,返回第二個引數值
song.pop('sec') #刪除某key-value
print(song)

set只是一組key的集合,所以它也是不重複的,同樣也不可以放入可變物件。

magic = set(['stone','light gold','feeling','woooo','woooo']) #set會過濾重複值
print(magic)
magic.add('aloha') #新增元素
print(magic)
magic.remove('stone') #刪除元素
print(magic)

romance = set(['rock','open','air','dysphoria','feeling'])
print(romance & magic) #取交集