while 1:` → `1` 是真值(True),条件恒为真,**无break或退出机制时会无限循环
选项中会无限循环的是C.while 1:✅ 解析A.while 0:→0是假值False循环体不执行不会进入循环更不会无限循环。B.while False:→ 条件恒为假循环体不执行不会进入循环。C.while 1:→1是真值True条件恒为真无break或退出机制时会无限循环。D.for i in range(5):→ 明确迭代5次i 0,1,2,3,4有限循环不会无限。因此正确答案是C# 示例C 会导致无限循环除非内部有 breakwhile1:print(Hello)# 永远打印除非手动中断CtrlC或加 break在 Python 中以下值在布尔上下文中被视为False即调用bool(x)返回False其余绝大多数值均为True✅明确为假Falsy的值有且仅有以下 7 种来自 Python 官方文档NoneFalse布尔类型本身所有数值类型的零值0int0.0float0jcomplex空序列/集合空字符串()空元组[]空列表{}空字典set()空集合range(0)空 range 对象其他自定义对象若实现了__bool__()方法并返回False或未实现__bool__()但实现了__len__()且len(obj) 0也视为False⚠️ 注意0.000,-0,0.00.0j等仍属于零值均为False。False字符串、[0]、{0: 0}、True等都是True—— 字符串非空即真容器非空即真与内容语义无关。# 示例验证falsy_values[None,False,0,0.0,0j,,(),[],{},set(),range(0)]print([bool(x)forxinfalsy_values])# 全为 [False, False, False, ..., False]# 这些看似“假”但实际为 Trueprint(bool(False))# True非空字符串print(bool([0]))# True非空列表print(bool({}))# False空字典✅但 bool({a:1}) → True