Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-在DICT上循环并获得回溯错误_Python - Fatal编程技术网

Python-在DICT上循环并获得回溯错误

Python-在DICT上循环并获得回溯错误,python,Python,我用BeautifulSoup创建了一个长度为42的DICT。我试图从标签中提取文本,我知道最后的一些文本是空白的。当我输入player[42]。text时,它从REPL返回一个空白,但当我在循环中调用它时,我得到: Traceback (most recent call last): File "<stdin>", line 2, in <module> File "/Users/Brad/anaconda/lib/python3.6/site-packages

我用BeautifulSoup创建了一个长度为42的DICT。我试图从标签中提取文本,我知道最后的一些文本是空白的。当我输入player[42]。text时,它从REPL返回一个空白,但当我在循环中调用它时,我得到:

Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
  File "/Users/Brad/anaconda/lib/python3.6/site-packages/bs4/element.py", line 997, in __getitem__
    return self.attrs[key]
KeyError: 0

我查看了Google和Stackoverflow,找到了一些If语句可以尝试,但仍然不走运。

您不需要指定索引<代码>播放器已经是单个对象,因此您可以执行以下操作:

name = player.text.strip() 
print(name)

您不需要指定索引<代码>播放器已经是单个对象,因此您可以执行以下操作:

name = player.text.strip() 
print(name)

for循环依次迭代
player
中分配给
player
每个项目的项目。当尝试使用
player[0]
BeautifulSoup进行索引时,使用属性名称
0
将其视为属性查找。播放器标记中没有名为
0
的属性,因此查找失败,并引发
KeyError

您应该这样循环:

for player in players:
    name = player.text.strip()
    print(name)

for循环依次迭代
player
中分配给
player
每个项目的项目。当尝试使用
player[0]
BeautifulSoup进行索引时,使用属性名称
0
将其视为属性查找。播放器标记中没有名为
0
的属性,因此查找失败,并引发
KeyError

您应该这样循环:

for player in players:
    name = player.text.strip()
    print(name)

谢谢这非常有效。谢谢你的帮助,谢谢!这非常有效。感谢您的帮助。感谢您在解释中提供的详细信息。当我看到它以几种不同的方式解释时,真的帮助了我的理解。感谢解释中的细节。当我看到它以几种不同的方式被解释时,真的帮助了我的理解。