类 'dict' 未定义 '__getitem__'
import datetimedata_dict = {
'A': datetime.date(2023, 6, 30),
'B': datetime.date(2023, 7, 12),
'C': datetime.date(2023, 7, 11),
'D': datetime.date(2023, 7, 12),
'E': datetime.date(2023, 7, 12),
}
for i in data_dict:
date = data_dict
print(i)
print(date)
# 偶尔会提示类 'dict' 未定义 '__getitem__',有时又没有提示
# 请大神解惑,要怎么才能不产生这种提示?程序是正常运行的,有点强迫症,必应搜索了,没看明白 lizy169 发表于 2023-7-15 21:25
一样的,最开始我就没有加str,出现这个问题才加的,过几天又出现这种禁告,反正时有时不有,代码没变, ...
试试使用类型提示,显式地将字典的键和值的类型指定为字符串和日期类型:
```python
from typing import Dict
data_dict: Dict = {
'A': datetime.date(2023, 6, 30),
'B': datetime.date(2023, 7, 12),
'C': datetime.date(2023, 7, 11),
'D': datetime.date(2023, 7, 12),
'E': datetime.date(2023, 7, 12),
}
``` 用的pycharm,有的说是版本旧了,后面升级到最新版本也是一样的 可能是变量i的类型不确定导致的,循环后面那行直接用 date = data_dict
就好了 hrh123 发表于 2023-7-15 21:16
可能是变量i的类型不确定导致的,循环后面那行直接用 date = data_dict
一样的,最开始我就没有加str,出现这个问题才加的,过几天又出现这种禁告,反正时有时不有,代码没变,用这种方法循环字典也是一样:
for k,v in dict_1.items():
print(k,">>",v)
本帖最后由 hrh123 于 2023-7-15 21:34 编辑
lizy169 发表于 2023-7-15 21:25
一样的,最开始我就没有加str,出现这个问题才加的,过几天又出现这种禁告,反正时有时不有,代码没变, ...
那应该就是IDE的问题吧,你的IDE可能没理解你的代码 这个可能就是pycharm的bug,很多人都遇到,包括PyCharm 2023.1 RC版
https://youtrack.jetbrains.com/issue/PY-50136/Regression-of-PY-39510-Class-dict-does-not-define-getitem 楼主用的pycharm啊,怪不得,pycharm莫名其妙的提示很多,不要管就好,我的工作区日常20多个,一般我只处理红的提示
页:
[1]