我试图用Python进行一个比较基本的操作,我试图从一个列表中打印一个值,如果它是一个特定类型的值,那么比如说,如果它是一个字符串类型,那么就打印这个值。
这是我目前的情况,我相信我的结构设计也有些不正确,因为exception也打印了5次。
x = [ 1, 'string', 3, 4, 5 ]
for i in x:
if i is type(str):
print('item is {}'.format(i))
else:
print('There are no strings in the list')
谢谢你
而不是
if i is type(str):
我想你想要的。
if type(i) is str:
但更好的办法是用:
if isinstance(i, str):
如果你想只打印字符串,可以试试下面的代码。 否则,如果条件失败,条件将被执行。
x = [ 1, 'string', 3, 4, 5 ]
for i in x:
if type(i) is str:
print('item is {}'.format(i))
或者
x = [ 1, 'string', 3, 4, 5 ]
for i in x:
if isinstance(i, str):
print('item is {}'.format(i))