gpt4 book ai didi

python - Python 3.5 中的 F 字符串无效语法

转载 作者:行者123 更新时间:2023-12-03 18:40:52 24 4
gpt4 key购买 nike

关闭。这个问题需要debugging details .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

2年前关闭。




Improve this question




我知道F Strings介绍于 Python 3.6 .为此,我收到错误 - Invalid Syntax

DATA_FILENAME = 'data.json'
def load_data(apps, schema_editor):
Shop = apps.get_model('shops', 'Shop')
jsonfile = Path(__file__).parents[2] / DATA_FILENAME

with open(str(jsonfile)) as datafile:
objects = json.load(datafile)
for obj in objects['elements']:
try:
objType = obj['type']
if objType == 'node':
tags = obj['tags']
name = tags.get('name','no-name')
longitude = obj.get('lon', 0)
latitude = obj.get('lat', 0)
location = fromstr(F'POINT({longitude} {latitude})', srid=4326)
Shop(name=name, location = location).save()
except KeyError:
pass

错误 -
location = (F'POINT({longitude} {latitude})', srid=4326)
^
SyntaxError: invalid syntax

所以我用 -
fromstr('POINT({} {})'.format(longitude, latitude), srid=4326)

该错误已被删除,它对我有用。然后我找到了这个库 future-fstrings .我应该使用它。这将删除上面的 Invalid Error

最佳答案

对于旧版本的 Python(3.6 之前):
使用 future-fstrings :

pip install future-fstrings 
你必须在代码的顶部放置一个特殊的行:
coding: future_fstrings
因此,在您的情况下:
# -*- coding: future_fstrings -*-
# rest of the code
location = fromstr(f'POINT({longitude} {latitude})', srid=4326)

关于python - Python 3.5 中的 F 字符串无效语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55182209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com