Python 使用find()方法时的AttributeError
希望有人能对此做出解释 我是Python新手,在通过在线课程进行作业学习时偶然发现: 创建了卡片组,需要移除几张卡片-我想我应该在卡片组[]中.findstr,返回它的索引I和.removei。这样我就可以验证代码是如何工作的,因为我还在学习 当我使用.find方法时,会出现以下错误: AttributeError:“列表”对象没有“查找”属性 但是在索引方法上没有这样的错误:下面是两种方法 ` 。。。和调用代码Python 使用find()方法时的AttributeError,python,Python,希望有人能对此做出解释 我是Python新手,在通过在线课程进行作业学习时偶然发现: 创建了卡片组,需要移除几张卡片-我想我应该在卡片组[]中.findstr,返回它的索引I和.removei。这样我就可以验证代码是如何工作的,因为我还在学习 当我使用.find方法时,会出现以下错误: AttributeError:“列表”对象没有“查找”属性 但是在索引方法上没有这样的错误:下面是两种方法 ` 。。。和调用代码 print(gamedeck) print('-----------') for
print(gamedeck)
print('-----------')
for killzerocard in Cards.Suits:
# gamedeck.killcard('0'+killzerocard[1:]) # Uno deck only as 1 Zero (0) card for each of the colors
try:
gamedeck.findcard('0'+killzerocard)
except:
print('error thrown by find')
gamedeck.indxcard('0'+killzerocard)
print('-----------')
# gamedeck.shuffle()
print(gamedeck)
`
结果是:
列表对象没有查找方法。str和list对象都有索引方法,但只有str有find方法。对于字符串,这两种方法基本相似,只是当参数不在字符串中时,index将抛出异常,find将返回-1。Thank@my呈请-我觉得这或多或少是显而易见的。
print(gamedeck)
print('-----------')
for killzerocard in Cards.Suits:
# gamedeck.killcard('0'+killzerocard[1:]) # Uno deck only as 1 Zero (0) card for each of the colors
try:
gamedeck.findcard('0'+killzerocard)
except:
print('error thrown by find')
gamedeck.indxcard('0'+killzerocard)
print('-----------')
# gamedeck.shuffle()
print(gamedeck)