如何用Python统计用户输入序列中的相邻奇数对数量
相邻奇数对统计代码补全方案
核心判断逻辑
判断整数为奇数的规则为:整数对2取模结果等于1,对应代码写法为 num % 2 == 1。
补全后完整代码
n = int(input("Enter the length of the sequence: \n")) nums = [] count = 0 for i in range(n): num = int(input(f"Enter number {i+1}:\n")) nums.append(num) # 从第二个数开始校验与前一个数是否组成相邻奇数对 if i >= 1: if nums[i-1] % 2 == 1 and nums[i] % 2 == 1: count += 1 print(f"The number of pairs of adjacent odd numbers is: {count}")
实现逻辑说明
- 新增空列表
nums存储所有用户输入的数字序列 - 每次输入数字后追加到列表末尾,从第二个输入的数字开始,直接和前一位数字做奇数校验
- 两个相邻数均满足奇数条件时,计数加1,无需二次遍历序列,执行效率更高
- 测试示例输入时输出结果和需求完全匹配:输入长度5,数字依次为57、89、3、11、8时,输出结果为3,符合预期。
优化说明:原代码中的
eval替换为int处理输入,避免用户输入非数字内容时产生代码执行安全风险,更符合常规输入处理规范。
内容的提问来源于stack exchange,提问作者user16053605
相关产品推荐
相关产品推荐

