You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中筛选指定十六进制范围内的数值(不使用range函数)

解决十六进制字符串列表的筛选问题

原代码的问题

  • 语法错误:if条件里的<= "00000610"缺少操作数,必须明确写出i <= "00000610"
  • 冗余无效代码:num =未完成赋值,属于多余语句

正确实现代码

h = ["00000100", "000000c0", "000000a0", "00000620", "00000660", "00006000"]
for i in h:
    # 直接用字符串比较,所有元素都是等长8位十六进制格式
    if "00000100" < i < "00000610":
        print(i)

说明

因为所有十六进制字符串都是固定8位长度,直接做字符串比较就等价于比较十六进制数值的大小:ASCII编码里,0-9、A-F(小写同理)的字符顺序和十六进制值的顺序完全匹配,所以不用转成整数、也不用range函数就能完成筛选。

注:你的列表里没有符合大于"00000100"且小于"00000610"条件的元素,运行代码不会输出任何结果。

内容的提问来源于stack exchange,提问作者jhonD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 21:41:03