如何调试此Python 3.7语法错误?
我仍在尽可能多地学习Python。我遇到了这个问题,我认为用它来学习可能有点过于雄心勃勃,我是对的。首先,它输出此错误如何调试此Python 3.7语法错误?,python,python-3.x,Python,Python 3.x,我仍在尽可能多地学习Python。我遇到了这个问题,我认为用它来学习可能有点过于雄心勃勃,我是对的。首先,它输出此错误 available_list = [f'\n{key} - {value}' for (key, value) in slot_data.items() if value != 'UNAVAILABLE'] ^ SyntaxError: invalid syntax 而且已经不知道如何修复它了。
available_list = [f'\n{key} - {value}' for (key, value) in slot_data.items() if value != 'UNAVAILABLE']
^
SyntaxError: invalid syntax
而且已经不知道如何修复它了。我被卡住了,因为我不知道代码第50行的f'\n{key}
是什么。它应该是什么
更新
感谢回应的人。但现在我有一个新的错误。我补充说
import sys
print(sys.version)
按照某人的建议检查Python版本
3.7.5 (default, Nov 20 2019, 09:21:52)
[GCC 9.2.1 20191008]
<Response [400]>
{}
Traceback (most recent call last):
File "/home/user/Documents/Python works/get-grocery-delivery-slots.py", line 47, in <module>
for slot_day in r.json()['data']['slot_days']:
File "/usr/lib/python3/dist-packages/requests/models.py", line 897, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/lib/python3/dist-packages/simplejson/__init__.py", line 518, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
3.7.5(默认,2019年11月20日09:21:52)
[GCC 9.2.1 20191008]
{}
回溯(最近一次呼叫最后一次):
文件“/home/user/Documents/Python works/get groundry delivery slots.py”,第47行,在
对于r.json()['data']['slot\u days']中的slot\u day:
json格式的文件“/usr/lib/python3/dist packages/requests/models.py”,第897行
返回complexjson.load(self.text,**kwargs)
文件“/usr/lib/python3/dist-packages/simplejson/_-init__.py”,第518行,装入
返回\u默认\u解码器。解码
文件“/usr/lib/python3/dist packages/simplejson/decoder.py”,第370行,在decode中
obj,end=self.raw_解码
文件“/usr/lib/python3/dist packages/simplejson/decoder.py”,第400行,原始解码
返回self.scan_一次(s,idx=_w(s,idx.end())
simplejson.errors.JSONDecodeError:预期值:第1行第1列(字符0)
问题在于,您试图使用的是仅在Python 3上受支持的。最接近Python 2的等价物如下所示:
'\n{key} - {value}'.format(key=key, value=value)
或者:
'\n{} - {}'.format(key, value)
在这里善良的人们的帮助下,我把第一行改成了
#/usr/bin/python3.7
python版本似乎很感谢我认为它现在有一个新错误我不知道如果我设法解决了原来的问题,请将其标记为已解决,并在需要时提出一个新问题。