【发布时间】:2018-02-01 12:15:20
【问题描述】:
a=[1, 2, 3, -2, -5, -6, 'geo']
for I in a:
if I == star:
continue
if I<0:
print('I=', I)
我不知道如何让我的程序提取负数并只打印它们以避免字符串。请帮我。
【问题讨论】:
标签: python python-3.x for-loop if-statement
a=[1, 2, 3, -2, -5, -6, 'geo']
for I in a:
if I == star:
continue
if I<0:
print('I=', I)
我不知道如何让我的程序提取负数并只打印它们以避免字符串。请帮我。
【问题讨论】:
标签: python python-3.x for-loop if-statement
这就是我认为您正在寻找的东西。我修复了几个格式问题。
a = [1, 2, 3, -2, -5, -6, 'geo']
for I in a:
if I == 'star':
continue
try:
if I < 0:
print('I=', I)
except TypeError:
continue
# I= -2
# I= -5
# I= -6
已更新为仅捕获 TypeError 以外的错误。
【讨论】:
据我了解,您只想打印负整数。
下面的代码应该做到这一点:
a=[1, 2, 3, -2, -5, -6, 'geo']
for I in a:
if type(I) is int:
if I < 0:
print('I=', I)
输出:
我= -2
我= -5
我= -6
【讨论】:
isinstance(I, int) 而不是检查显式类型标识。
isinstance 是要走的路。
if isinstance(l, int) and l < 0:
print('l=', l)
【讨论】:
try...except...而不是isinstance:stackoverflow.com/questions/21024913/…