此问题已在此处找到答案:
理解切片表示法(33个答案)
10小时前关门了。
def is_double_char(str):
end = len(str)+1
print(type(end))
for i in range(1, len(str)):
add_one = i+1
print(type(i))
print(type(add_one))
if str[add_one, end].find(str[i]) != -1:
return True
return False
这是我的密码。该方法应查找字符串是否包含2个或更多相同字符。
print(is_double_char("hello"))
______________________________
<class 'int'>
<class 'int'>
<class 'int'>
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-21-606a7223e550> in <module>()
----> 1 print(is_double_char("hello"))
<ipython-input-20-b1c815934cad> in is_double_char(str)
6 print(type(i))
7 print(type(add_one))
----> 8 if str[add_one, end].find(str[i]) != -1:
9 return True
10 return False
TypeError: string indices must be integers
我不明白。根据我的调试打印,我的所有索引都已经是整数了。有人能帮忙吗?非常感谢。
2条答案
按热度按时间rqcrx0a61#
代码:
输出:
我做的唯一修改就是你拼接列表的方式。此外,使用
str
作为输入参数的名称是一种非常糟糕的做法。尝试使用stru输入之类的东西。bnl4lu3b2#
也许这就是你需要的:
注意:我更改了名为
str
具有string
因为str
是一种内置类型。我换了
,
具有:
(第8行)。