D:\code\myworld\lib\site-packages\requests\__init__.py:109: RequestsDependencyWarning: urllib3 (2.0.2) or chardet (None)/charset_normalizer (3.0.1) doesn't match a supported version! warnings.warn( Traceback (most recent call last): File "E:/403/myworld/graphBatch.py", line 38, in <module> dgl.save_graphs(OUT_PATH + "merged_graph_train.bin",[merged_graph_train],'coo') File "D:\code\myworld\lib\site-packages\dgl\data\graph_serialize.py", line 142, in save_graphs save_heterographs(filename, g_list, labels, formats) File "D:\code\myworld\lib\site-packages\dgl\data\heterograph_serialize.py", line 37, in save_heterographs filename, gdata_list, tensor_dict_to_ndarray_dict(labels), formats File "D:\code\myworld\lib\site-packages\dgl\data\heterograph_serialize.py", line 17, in tensor_dict_to_ndarray_dict for key, value in tensor_dict.items(): AttributeError: 'str' object has no attribute 'items'
时间: 2023-07-21 22:21:52 浏览: 139
这个错误提示表明在执行`dgl.save_graphs`函数时,传入的`labels`参数是一个字符串,而不是一个字典类型的对象,导致在调用`tensor_dict_to_ndarray_dict`函数时发生了错误。需要将`labels`参数改为字典类型的对象,或者将其置为空字典`{}`即可。
修改后的代码示例如下:
```python
import dgl
import torch
# 创建一张图
g = dgl.graph([(0, 1), (1, 2), (2, 3)])
g.ndata['feat'] = torch.randn(4, 5)
g.edata['feat'] = torch.randn(3, 3)
# 以COO格式存储
dgl.save_graphs('graph.bin', [g], 'coo', {})
# 读取存储的图
glist, _ = dgl.load_graphs('graph.bin')
print(glist)
```
在上面的示例中,我们将`labels`参数改为空字典`{}`,以COO格式存储了一张图,并用`load_graphs`函数读取了存储的图。
相关问题
D:\code\myworld\lib\site-packages\requests\__init__.py:109: RequestsDependencyWarning: urllib3 (2.0.2) or chardet (None)/charset_normalizer (3.0.1) doesn't match a supported version! warnings.warn( Traceback (most recent call last): File "E:/403/mywor
这个警告提示表明在使用`requests`模块时,其依赖的`urllib3`或`chardet`/`charset_normalizer`版本不匹配,不符合支持的版本要求。可以考虑升级或降级相应的依赖包来解决该问题。
具体而言,可以通过以下命令升级/降级`urllib3`和`chardet`/`charset_normalizer`:
```python
pip install urllib3==1.26.6 chardet==4.0.0 charset_normalizer==2.0.4
```
在上面的命令中,我们指定了`urllib3`的版本为`1.26.6`,`chardet`的版本为`4.0.0`,`charset_normalizer`的版本为`2.0.4`,可以根据实际情况进行修改。执行完命令后,再次运行程序即可。
D:\Anaconda3\lib\site-packages\requests\__init__.py:91: RequestsDependencyWarning: urllib3 (1.25.11) or chardet (3.0.4) doesn't match a supported version! RequestsDependencyWarning)
这个警告是由于 requests 库所依赖的 urllib3 和 chardet 库版本不匹配造成的。为了解决这个问题,你可以尝试以下方法:
1. 升级或降级 urllib3 和 chardet 库:可以尝试升级或者降级 urllib3 和 chardet 库来与 requests 库版本匹配。在命令行中运行以下命令:
- 升级:pip install --upgrade urllib3 chardet
- 降级:pip install urllib3==1.24.3 chardet==3.0.4
2. 忽略警告:如果你确定这个警告不会影响你的程序运行,可以通过以下代码忽略这个警告:
```
import warnings
from requests.packages.urllib3.exceptions import InsecureRequestWarning
warnings.simplefilter('ignore', category=InsecureRequestWarning)
```
希望以上方法能够解决你遇到的问题。
阅读全文