Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python &引用;无效语法";为api调用创建URL的fstring出错_Python_Python 3.x_Urllib_Cs50 - Fatal编程技术网

Python &引用;无效语法";为api调用创建URL的fstring出错

Python &引用;无效语法";为api调用创建URL的fstring出错,python,python-3.x,urllib,cs50,Python,Python 3.x,Urllib,Cs50,我正在通过EdX进行CS50 online的最后一个项目,我想使用一个fstring,就像上一个API调用问题集中所做的那样,但我遇到了以下错误: File "populateDatabase.py", line 14 url = f"https://api.themoviedb.org/3/movie/{urllib.parse.quote_plus(IMDBID)}?api_key={api_key}&append_to_response=rel

我正在通过EdX进行CS50 online的最后一个项目,我想使用一个fstring,就像上一个API调用问题集中所做的那样,但我遇到了以下错误:

File "populateDatabase.py", line 14
    url = f"https://api.themoviedb.org/3/movie/{urllib.parse.quote_plus(IMDBID)}?api_key={api_key}&append_to_response=release_dates"
                                                                                                                                   ^
SyntaxError: invalid syntax
我不知道我做错了什么,因为我认为只要复制该类工作人员编写的问题集中使用的代码,但更改URL使其与我的API相关就可以了。有人知道这里会发生什么吗?

Jaet

您可以执行以下代码段吗

import urllib
from urllib import parse

IMDBID = 'tt0068646'
api_key = 'YOUR_API_KEY'

url = f"https://api.themoviedb.org/3/movie/{urllib.parse.quote_plus(IMDBID)}?api_key={api_key}&append_to_response=release_dates"
print(url)
在这里工作很好(Python 3x)

结果:

从站点(有时是站点)复制代码段时要小心 文本编码(字符集)与IDE字符集不同,并且 主要表示具有不同字符的引号,这将生成 错误。在本例中,请重新键入引号和特殊字符


您使用的是什么版本的Python?它可能太旧了,无法支持f字符串(尽管在这种情况下,错误通常指向行的前面iirc)。@Carcigenicate Python 3.9.5。我猜,因为这是最新版本,所以它会检查上面的行,以确保没有缺少引号或右括号。语法错误回溯并不总是显示语法错误的位置。一般来说,它会在之前的行中找到。在您提供的行周围显示代码,或在该行之前查找语法错误。据我所见,这不是一个f字串错误。@Jaet请始终提供一个snip代码以获得帮助。仅仅给出错误并不能帮助理解您所做的事情。您知道这是怎么回事吗?我太笨了,我在做“python[filename].py”而不是“python3[filename].py”,谢谢您的帮助!嗨,这发生在最好的家庭里。我很高兴一切顺利。