设计一个函数eachonce(),它接收一个列表List作为其参数,如果1~9这9个数字在此列表内都出现恰好1次,则返回True;否则,返回那些缺失的数字(即[1,2,3,4,5,6,7,8,9]而此列表没有的数字),注意:不能改变原列表;
2条回答 默认 最新
ShowMeAI 2022-12-21 00:03关注望采纳
def eachonce(List): # 创建一个字典,用于记录1~9的出现次数 count = {i: 0 for i in range(1, 10)} missing = [] # 遍历列表,统计数字出现的次数 for num in List: if num in count: count[num] += 1 # 检查数字是否出现恰好1次 for num in count: if count[num] == 0: missing.append(num) elif count[num] > 1: return False # 如果没有缺失的数字,则返回True if len(missing) == 0: return True # 否则返回缺失的数字 return missing使用示例:
print(eachonce([1, 2, 3, 4, 5, 6, 7, 8, 9])) # 输出:True print(eachonce([1, 2, 3, 4, 5, 6, 7, 8, 9, 9])) # 输出:False print(eachonce([1, 2, 3, 4, 5, 6, 7, 8])) # 输出:[9]本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报