XYYS11596 发表于 2020-7-22 18:25:57

isdigit用法问题

member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]
for i in member:
    if i.isdigit():
      print(i,end='\n')
    else:
      print(i)
为什么会报错。。是我的isdigit用错了嘛?只输出了一个小甲鱼。{:5_104:}

zltzlt 发表于 2020-7-22 18:28:07

isdigit() 方法只适用于字符串,所以判断一个元素是字符串还是数字就不能用 isdigit() 了。这样即可:

member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]
for i in member:
    if isinstance(i, int):    # 如果 i 是整数就执行 if 缩进下的内容
      print(i, end='\n')
    else:
      print(i)

XYYS11596 发表于 2020-7-22 18:28:18

噢 我懂了,isdigit只能对字符串。i在遍历的时候变成了int类型,所以报错了。。

zltzlt 发表于 2020-7-22 18:34:14

XYYS11596 发表于 2020-7-22 18:28
噢 我懂了,isdigit只能对字符串。i在遍历的时候变成了int类型,所以报错了。。

如果你的问题已解决,请设置【最佳答案】
页: [1]
查看完整版本: isdigit用法问题