含int、str、float类型元素的列表奇数筛选操作可行性咨询
混合类型列表筛选奇数的实现方案
当然可以对包含不同类型元素的列表做条件操作,核心是先过滤出符合类型要求的元素,再做奇数判断。
具体实现思路
- 遍历列表中的每个元素
- 先判断元素是否为
int类型(字符串、非整数型浮点数无法直接判断奇偶) - 对int类型的元素,判断是否为奇数(即
元素 % 2 != 0) - 符合条件的元素直接打印
代码示例
my_list = [2, 3, 0.5, "cams"] for item in my_list: # 先筛选整数类型元素 if isinstance(item, int): # 判断是否为奇数 if item % 2 != 0: print(item)
运行后输出:3
补充扩展
如果列表里存在3.0这种值为整数的浮点数,想要把它也纳入奇数判断范围,可以调整逻辑:
my_list = [2, 3, 0.5, 3.0, "cams"] for item in my_list: # 筛选数字类型且值为整数的元素 if isinstance(item, (int, float)) and item.is_integer(): num = int(item) if num % 2 != 0: print(num)
运行后输出:3、3
内容的提问来源于stack exchange,提问作者Camila C
相关产品推荐
相关产品推荐

