吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 923|回复: 7
收起左侧

[求助] 类 'dict' 未定义 '__getitem__'

[复制链接]
lizy169 发表于 2023-7-15 21:08
40吾爱币
[Python] 纯文本查看 复制代码
import datetime
data_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[str(i)]
    print(i)
    print(date)
    
# 偶尔会提示类 'dict' 未定义 '__getitem__',有时又没有提示

# 请大神解惑,要怎么才能不产生这种提示?程序是正常运行的,有点强迫症,必应搜索了,没看明白

最佳答案

查看完整内容

[md]试试使用类型提示,显式地将字典的键和值的类型指定为字符串和日期类型: ```python from typing import Dict data_dict: Dict[str, datetime.date] = { '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), } ```[/md]

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

hrh123 发表于 2023-7-15 21:08
lizy169 发表于 2023-7-15 21:25
一样的,最开始我就没有加str,出现这个问题才加的,过几天又出现这种禁告,反正时有时不有,代码没变, ...

试试使用类型提示,显式地将字典的键和值的类型指定为字符串和日期类型:

from typing import Dict
data_dict: Dict[str, datetime.date] = {
    '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),
}
 楼主| lizy169 发表于 2023-7-15 21:10
用的pycharm,有的说是版本旧了,后面升级到最新版本也是一样的
hrh123 发表于 2023-7-15 21:16
可能是变量i的类型不确定导致的,循环后面那行直接用
[Python] 纯文本查看 复制代码
    date = data_dict[i]
就好了

免费评分

参与人数 1吾爱币 +1 收起 理由
lizy169 + 1 谢谢@Thanks!

查看全部评分

 楼主| lizy169 发表于 2023-7-15 21:25
hrh123 发表于 2023-7-15 21:16
可能是变量i的类型不确定导致的,循环后面那行直接用 [mw_shl_code=python,false]    date = data_dict
[/m ...

一样的,最开始我就没有加str,出现这个问题才加的,过几天又出现这种禁告,反正时有时不有,代码没变,用这种方法循环字典也是一样:
for k,v in dict_1.items():
    print(k,">>",v)
hrh123 发表于 2023-7-15 21:29
本帖最后由 hrh123 于 2023-7-15 21:34 编辑
lizy169 发表于 2023-7-15 21:25
一样的,最开始我就没有加str,出现这个问题才加的,过几天又出现这种禁告,反正时有时不有,代码没变, ...

那应该就是IDE的问题吧,你的IDE可能没理解你的代码
px307 发表于 2023-7-15 22:14
这个可能就是pycharm的bug,很多人都遇到,包括PyCharm 2023.1 RC版
https://youtrack.jetbrains.com/i ... -not-define-getitem

免费评分

参与人数 1热心值 +1 收起 理由
lizy169 + 1 谢谢@Thanks!

查看全部评分

hrh123 发表于 2023-7-15 23:27
楼主用的pycharm啊,怪不得,pycharm莫名其妙的提示很多,不要管就好,我的工作区日常20多个,一般我只处理红的提示
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 22:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表