List與Tuple
Python內置2種有序列表。List是可變數組,Tuple是不可變數組。
List範例:
Girls =['LiuJingjing','ZhangHuixin','YeFei']
-用len()函數獲得list元素個數。
-索引位置從0開始,最後一個元素的索引是-1
Girls[-1]
YeFei
-刪除指定元素
Girls.pop(i)
-插入指定元素
Girls.insert(i,’BaiTing’)
-嵌套list
Friends=[‘ZhaoYadong’,Girls,’ChenMengxiang’]
那麼Liujingjing這個元素對應的是Friends[1][0]
Tuple範例:
Girls = ('LiuJingjing','ZhangHuixin','YeFei')
-定義單元素Tuple,要加逗以消除歧義。
Girls= ('LiuJingjing',)
dict與set
可以就把dict想象成查字典的過程,dict使用(key-value)方式存儲,以空間換時間。其內部存放順序與key的放入順序無關。
dict範例:
Age={‘ChengYin’:23,’LiuJingjing’:24,’YiBowen’:22}
Age[‘ChengYin’]
23
-刪除一個詞條
Age.pop(‘YiBowen’)
雖然刪除的是key,但是key對應的value值22也被一起刪除了。
-key必須是不可變對象,而list是可變的,不可以作爲key。
set
set是key的集合(沒有重複元素,可交可並),而不存儲value。
set範例:
s1=set([1,2,3])
s2=set([2,3,5])
s1&s2
set([2,3])
s1|s2
set([1,2,3,5])
-可通過add(key)添加key
s1.add(3)
但是重複添加不會有效果,因爲set是個集合。
-可通過remove(key)刪除元素:
s1.remove(3)
set([1,2])
函數的默認參數
我們現在定義一個函數計算x的立方。
defpower(x,n=3):
s=1
while n>0:
n=n-1
s=s*x
return s
這時,我們可以直接調用power(6),達到與power(6,3)同樣的效果。
函數的可變參數
在參數前面加一個*號即可。例如定義一個求立方和函數。
def cube(*numbers):
sum=0
for n in numbers:
sum=sum+n*n*n
return sum
以後就可以直接調用了:
cube(1,5,6)
如果已經有了一個list或tuple,則
Nums=[1,5,6]
cube(*Nums)
遞歸函數
函數內部調用自己。以階乘函數爲例:
deffact(n):
if n==1
return 1
return n*fact(n-1)
切片
去除有序列表的部分元素。如Girls的最後2個元素:
Girls[1:]
或者
Girls[-2:]
-取出第2個元素
Girls[1:2]
-取出最後1個元素
Girls[-2:-1]
下標循環迭代
fori,value in enumertate([‘A’,’B’,’C’]):
print i,value
歡迎參與討論並關注本博客和微博以及知乎個人主頁後續內容繼續更新哦~
轉載請您尊重作者的勞動,完整保留上述文字以及文章鏈接,謝謝您的支持!