我有一段代码,它使用我命名的get_event_info函数从ticketmasterapi获取数据。随后根据修改后的基于URL的原始身份验证函数代替了原来的修改后的代码。我还向函数添加了几行,用于验证响应状态代码。在进行这些更改之后,代码开始生成以下TypeError:Traceback (most recent call last):

File "ticketmaster_only_w_headers.py", line 146, in

for event in ticket_search["_embedded"]["events"].items():

TypeError: 'NoneType' object is not subscriptable

我已经读了很多关于这类错误的文章,但是我仍然不能确定为什么我的代码会在这个实例中产生它。如果能解释一下为什么我的代码会产生这个错误,以及我应该使用什么样的故障排除方法来发现源错误,我将非常感激。我对编程相当满意,但肯定不是专家,所以语言越简单越好。在

(功能定义)

^{pr2}$

(触发错误的代码段)ticket_search = get_event_info("")

for event in ticket_search["_embedded"]["events"]:

a = event["id"]

b = event["name"]

if "dateTime" in event["dates"]["start"]:

c = event["dates"]["start"]["dateTime"].replace(

"T", " ").replace("Z", "")

else:

c = "NONE"

if "end" in event["dates"] and "dateTime" in event["dates"]["end"]:

j = event["dates"]["end"]["dateTime"].replace(

"T", " ").replace("Z", "")

else:

j = "NONE"

(创建、打开并写入上述代码中使用的缓存的代码)CACHE_FNAME = "ticketmaster_cache.json"

try:

cache_file = open(CACHE_FNAME, "r")

cache_contents = cache_file.read()

CACHE_DICTION = json.loads(cache_contents)

cache_file.close()

except:

CACHE_DICTION = {}

下面显示的get_event_info函数的前一个版本,它不生成任何TypeError:def get_event_info(search, ticketmaster_key = ticketmaster_key):

if search in CACHE_DICTION:

d = CACHE_DICTION[search]

else:

data = requests.get("https://app.ticketmaster.com/discovery/v2/events",

params = {"keyword": search, "apikey": ticketmaster_key,

"format":"json", "dmaId": "366", "size": 200, "radius": "2"})

print(data.url)

d = json.loads(data.text)

CACHE_DICTION[search] = d

f = open(CACHE_FNAME, 'w')

f.write(json.dumps(CACHE_DICTION))

f.close()

return d

运行最新版本的代码时看到的回溯和错误消息:Traceback (most recent call last):

File "ticketmaster_only_w_headers.py", line 146, in

for event in ticket_search["_embedded"]["events"]:

TypeError: 'NoneType' object is not subscriptable

python中的typeerror提示nonetype_如何解决和解决python中的“TypeError:'NoneType”对象不可订阅...相关推荐

  1. crontab中运行python程序出错,提示ImportError: No module named解决全过程

    将一个python脚本放入crontab执行时,提示如下错: ImportError: No module named hashlib 但是在shell中直接执行时没有任何问题,google之后,得到 ...

  2. Python运行时,提示SyntaxError: invalid syntax怎么解决

    Python真是太火了,最近我也入了Python的坑,开始自学Python 昨天在编写一个基于python 3的小游戏,但是出现了这个错误:"SyntaxError:invalid synt ...

  3. 关于Ubuntu中Firefox浏览器提示“代理服务器拒绝连接”的解决办法

    VMware虚拟机中安装了Ubuntu系统,Firefox浏览器显示"代理服务器拒绝连接",在VMware中的虚拟网络编辑器选项中选择了<还原默认设置>,重启后还是显示 ...

  4. Python:Python3错误提示TypeError: slice indices must be integers or None or have an __index__ method解决办法

    Python:Python3错误提示TypeError: slice indices must be integers or None or have an __index__ method解决办法 ...

  5. Python安装过程中提示:No Python 3.8 installation was detected;0x80070643严重错误 - 解决方法

    出现错误原因:没有通过卸载程序,直接删除Python,导致无法再安装同一版本的Python. 就是卸载不干净导致的. 解决方法: 通常可以在控制面板 - 程序功能 - 找到Python - 更改 - ...

  6. 全面理解Python中的类型提示(Type Hints)

    众所周知,Python 是动态类型语言,运行时不需要指定变量类型.这一点是不会改变的,但是2015年9月创始人 Guido van Rossum 在 Python 3.5 引入了一个类型系统,允许开发 ...

  7. python 解决bytes和str之间 出现 TypeError的问题

    解决TypeError: can only concatenate str (not "bytes") to str 错误提示: pic_content = pic_content ...

  8. python安装运行时提示不是内部或外部命令怎么办_如何解决cmd运行python提示不是内部命令...

    python安装完成后,直接运行python.exe能够正常执行python程序.但是进入到cmd命令窗口(同时按下win+r组合键后输入cmd进入),输入python命令提示"不是内部或外 ...

  9. python如何创建工程预设_如何在sublime3项目设置中设置python模块的搜索路径?ImportError: No module named *的解决办法...

    问题:之前使用pycharm,用的挺溜,但是电脑配置实在不争气,pycharm启动久了,耗去大量内存,导致运行起来越来越慢,于是转向使用sublime text. 把项目从pycharm切换到subl ...

最新文章

  1. 在WinForms中使用ActiveX
  2. 结合泛函极值_第2章泛函的极值.doc
  3. urllib2打开URL(含中文)的问题
  4. 20万数据 sql 快还是 java快?_H2数据库学习(一)
  5. 如何用SAP ABAP编程语言实现一个简单的区块链模型
  6. 解决orcale报ORA-28001: the password has expired
  7. 大数据驱动5G网络与服务优化
  8. JQuery事件——鼠标事件
  9. Penn Treebank词性标记集
  10. 数学建模系列--拟合算法
  11. 无限小说网 内部服务器错误,iOS网络模块优化(失败重发、缓存请求有网发送)...
  12. codevs1253 超级市场(dp)
  13. Visual Stdio 无法找到资源编译器DLL
  14. Cisco Packet Tracer路由器的基本命令
  15. Codefroces 760 B. Frodo and pillows
  16. raid5加热备盘_Raid5、热备盘原理 | 与其焦虑
  17. 百度地图定位功能的错误has leaked ServiceConnection 解决
  18. 2022中山大学计算机考研专硕初试经验分享
  19. Qt编写物联网管理平台17-记录清理
  20. 车载网络测试 - 车载以太网 - 传统配置方法(Channel Base)

热门文章

  1. 互联网快讯:极米多款产品获好评;摩尔线程与同方计算机达成战略合作;爱立信起诉苹果侵权其5G专利权
  2. C++ CRC16计算方法
  3. 植物大战僵尸java 僵尸_生存僵尸启示录:文字,路径和基本动画
  4. 长旋转椭球坐标系基础
  5. 禅宗经典智慧故事全集 读后感
  6. css app菜单,5种实用的移动手机APP导航菜单设计方案
  7. 视频教程-美团团购订单系统优化实践-其他
  8. 想辞职,先做好三个准备!
  9. 自学python的日记分享
  10. 根据模板导出word,复合格式表格生成、可变列表格生成