我正在尝试做一个简单的程序。这些字符串中是否有[a,an,the]中的任何一个,我应该获取它出现的次数。
我已经创建了一个列表,并拆分了string。但是,当我尝试访问列表中的元素时,出现错误:列表索引必须是整数,而不是str。我知道问题是->如果string.split()中的v [i]。应该是i在string.split()中。但是i指的是位置,我想比较位置v [i]中的状态。
v=['a','an','the']
def contain():
global count
count=0
string=input('Digit your string\n')
for i in v:
if v[i] in string.split():
count=count+1
return count
print(contain())
答案 0 :(得分:1)
您已经遍历了元素。
for e in v
与for i in range(len(v)): e = v[i]
答案 1 :(得分:0)
for f in os.listdir('<path>'):
name, ext = os.path.splitext(f)
if ext == '.img':
#do stuff
因此,您需要:
for i in v: # gaves you : i ='a', i='an', i='the'
if v[i] in string.split(): # v['the'] you are trying to get item from v but you are providing string instead of index ex: v['the']
或:
for i in range(len(v)): # gaves you : i =0, i=1, i=2
if v[i] in string.split(): # v[0], v[1], where v[0] is 'a' ...
count=count+1