有没有办法避免在 Python 中包含引号的格式化字符串中的双引号

Is there a way to avoid double quotation in formatting strings which include quotations inside them in Python

本来应该不是什么难题,但我已经研究了快一天了!

我想创建一个必须采用以下格式的查询:'lat':'###','long':'###' 其中 ###s 代表纬度和经度。

我正在使用以下代码生成查询:

coordinateslist=[]
for i in range(len(lat)):
     coordinateslist.append("'lat':'{}','long':'-{}'".format(lat[i],lon[i]))
coordinateslist

然而,结果会是一些类似的东西,它的开头和结尾都有“”:“'lat':'40.66','long':'-73.93'”。 =17=]

可笑的是,用 .replace 或 .strip 删除 " 是不可能的!并且将条款包裹在 repr 周围并不能解决问题。 你知道我怎样才能去掉那些双引号吗?

P.S。我知道当我打印命令时 " 不会显示但是当我在查询中使用数组的每个元素时, " 会出现在查询的末尾,这会阻止它工作. 直接这样写行:

query_params = {'lat':'43.57','long':'-116.56'}

工作得很好。

但使用以下任一代码都会导致错误。

aa=print(coordinateslist[0])
bb=coordinateslist[0]

query_params = {aa}
query_params = {bb}
query_params = aa
query_params = bb

很可能您遇到的错误完全是另外一回事(即与您在打印输出中看到的引号无关)。从查询的格式来看,我猜测它需要格式正确的 URL 参数:reverse_geocode.json?...'lat':'41.83','long':'-87.68' 不是。您是否尝试使用固定字符串手动调用它(例如与邮递员一起使用)?

假设您正在调用 Twitter geo/ API,您可能想使用正确分隔的 URL 参数来尝试一下。

geo/reverse_geocode.json?lat=41.83&long=-87.68

如果您不想从字符串表示中看到 ",请尝试使用字典:

coordinateslist.append({
    "lat": lat[i],
    "long": "-{}".format(lon[i])
})