每天一習題,提升Python不是問題!!有更簡潔的寫法請評論告知我!
https://www.cnblogs.com/poloyy/category/1676599.html
題目
請寫一個函數find_odd,參數是1個列表,請返回該列表中出現奇數次的元素 比如 find_odd([1, 1, 2, -2, 5, 2, 4, 4, -1, -2, 5]) ➞ -1 find_odd([20, 1, 1, 2, 2, 3, 3, 5, 5, 4, 20, 4, 5]) ➞ 5 find_odd([10]) ➞ 10
解題思路
- 循環列表
- 調用列表內置統計函數計算當前元素出現次數
- 出現次數模2是否不等於0
答案
def find_odd(lists): res = [] for i in lists: if lists.count(i) % 2 != 0: if i not in res: res.append(i) print(res) lists = [1, 1, 2, -2, 5, 2, 4, 4, -1, -2, 5] list1 = [20, 1, 1, 2, 2, 3, 3, 5, 5, 4, 20, 4, 5] list2 = [10, 1, 1, 1, 2, 2, 10, 5] find_odd(lists) find_odd(list1) find_odd(list2)