Python練習(基礎)
阿新 • • 發佈:2018-11-25
1.寫函式,檢查獲取傳入列表或元組物件的所有奇數位索引對應的元素,並將其作為新列表返回給呼叫者。 def func(lis): return lis[1::2] 2.寫函式,判斷使用者傳入的值(字串、列表、元組)長度是否大於5. def func(x): return len(x) > 5 3.寫函式,檢查傳入列表的長度,如果大於2,那麼僅儲存前兩個長度的內容,並將新內容返回給呼叫者。 def func(lis): if len(lis) > 2: return lis[:2] 但是切片有一個特性,多了不報錯,所以可以這樣寫def func(lis): return lis[:2] 4.寫函式,計算傳入字串中【數字】、【字母】、【空格】以及【其他】的個數,並返回結果。 def func(s): # 'fsadsad432 [email protected]#$' num = 0 # 計算數字的個數 alpha = 0 # 字母 space = 0 # 空格 other = 0 # 其他 for i in s: if i.isdigit(): num+= 1 elif i.isalpha(): alpha += 1 elif i.isspace(): space += 1 else: other += 1 return num,alpha,space,other print(func('fsadsad432 [email protected]#$')) #結果 #(3, 11, 1, 3) 但是這樣有個問題,就是沒人知道你傳回來的是什麼,如果需要知道傳回來的是什麼,需要看原始碼。所以最好要用字典。def func(s): # 'fsadsad432 [email protected]#$' dic = {'num':0,'alpha':0,'space':0,'other':0} for i in s: if i.isdigit(): dic['num'] += 1 elif i.isalpha(): dic['alpha'] += 1 elif i.isspace(): dic['space'] += 1 else: dic['other'] += 1 return dic print(func('fsadsad432 [email protected]#$')) #結果 #{'alpha': 11, 'num': 3, 'other': 3, 'space': 1}