1. 程式人生 > >python----語法

python----語法

定義 assm 查找 內部 兩種方法 需要 true 內置 不變

list,列表

classmates=["Michael","Bob","Tracy"]  #創建一個列表list

classmates.sort() #把list的元素進行從小到大的排序,比如1,2,1,2,4,3的list會變成1,1,2,2,3,4

len(classmates)  #獲取list元素個數

classmates[0]  #訪問list位置的元素,從0開始,小心越界,最後一個元素的索引為 len(classmates)-1

classmates[-1]  #正序從0開始,倒序從-1開始

classmates.append("Adam")  #在classmates的末尾增加元素

classmates.insert(2."Feng")  #插入指定位置

classmates.pop()  #刪除末尾元素

classmates.pop(2)  #刪除指定位置元素

classmates[2]="Hello"  #替換指定位置元素

classmate=[1,"good",True]  #一個list可以有不同類型的元素

L=[1,2,3,["python","java"],5,6,7]  #list可以在另外一個list中作為元素,等效二維數組

L=[]  len(L)  #list可以為空,沒有元素,變成一個空list,長度為0

tuple,元組

tuple一旦初始化就不能修改,因為tuple不可變,所以代碼更安全。如果可能,能用tuple代替list就盡量用tuple。

定義tuple時,元素必須確定。

t=(1,2)

定義空tuple

t=()

定義只有一個元素的tuple,必須加上逗號

t=(1,)

if <條件判定1>:

  <執行1>

elif <條件判定2>:

  <執行2>

elif <條件判定3>:

  <執行3>

else:

  <執行4>

input()函數返回的數據類型為字符型

python的循環包含兩種。

一種循環為for......in循環,把列表list或者元組tuple中的元素逐一叠代。

for...x...in 把每個元素代入變量x,然後執行縮進塊的語句。

names = [‘Michael‘, ‘Bob‘, ‘Tracy‘]
for name in names:
  print(name)

sum = 0
for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
  sum = sum + x

range()函數,可以生成一個整數序列,從0開始,左閉右開。通過list()函數可以把range()函數的結果轉換為列表list,然後賦值給變量進行調用。

range(5)

>>>L=list(range(10))

>>>L

[01,1,2,3,4,5,6,7,8,9]

一種循環為 while 循環。只要條件滿足,就不斷循環,條件不滿足時退出循環。

sum=0
num=0
while num<=10:
  sum=sum+num
  num=num+1
print(sum)

break語句可以提前退出循環。

n = 1
while n <= 100:
  if n > 10: # 當n = 11時,條件滿足,執行break語句
    break # break語句會結束當前循環
  print(n)
  n = n + 1
print(‘END‘)


continue語句,跳過當前的這次循環,直接開始下一次循環。

n = 0
while n < 10:
  n = n + 1
  if n % 2 == 0: # 如果n是偶數,執行continue語句
    continue # continue語句會直接繼續下一輪循環,後續的print()語句不會執行
print(n)

dict,是python內置的字典。全稱dictionary,按照 “鍵(key)--值(value)” 存儲,具有極快的查詢效率。

>>>d = {‘Michael‘:95,‘Bob‘:88,‘Tracy‘:76}

>>>d[‘Michael‘]

除了初始化指定dict,也可以通過key放入。

>>>d[‘Adam‘]=80

>>>d[‘Adam‘]

一個key對應一個值,若是重復更新key,後面的會覆蓋前面的。

通過兩種方法,可以判斷key是否在dict中存在:一是通過in,二是通過dict自帶的get()方法。

>>>‘Themas‘ in d

False

>>>d.get(‘Themas‘)

None #註意,這個None是不會顯示的

>>>d.get(‘Themas‘,-1)

-1

dict有以下幾個特點:

  1. 查找和插入的速度極快,不會隨著key的增加而變慢;
  2. 需要占用大量的內存,內存浪費多。

所以,dict是用空間來換取時間的一種方法。dict的key必須是不可變對象

因為dict根據key來計算value的存儲位置,如果每次計算相同的key得出的結果不同,那dict內部就完全混亂了。作為key的對象不能變。在Python中,字符串、整數等都是不可變的。

set和dict類似,也是一組key的集合,但不存儲value。由於key不能重復,所以,在set中,沒有重復的key。

set中的元素排列是隨機。也是唯一的。重復元素會自動過濾。

>>>s=set([1,2,3])

>>>s

{1,2,3}

>>>s=set([1,1,2,2,3,4,5,6,6,7])

>>>s

{1,2,3,4,5,6,7}

add(key)方法可以把元素添加到set中,可以重復添加,但只有第一次生效。

>>>s.add(10)

>>>s

{1,2,3,4,5,6,7,10}

>>>s.add(10) #重復執行

>>>s

{1,2,3,4,5,6,7,10} #不變化

remove(key)方法可以刪除元素。

>>>s.remove(2)

>>>s

{1,3,4,5,6,7,10}

python----語法