Python 3.6中的f-string调试简写

4

以下内容适用于Python 3.8+ (链接)

a = 1.5
print(f'{a=}')

在早期版本的Python中,它等同于
a = 1.5
print(f'a={a}')

我为Python 3.8+开发了我的库,但是一些服务器(CentOS-7,OpenSUSE-15.1/15.2)默认安装的是Python 3.6,需要在这些服务器上部署此库。我可以在这些服务器上安装3.8作为最后的手段,或者重写f-string行。
我想知道是否有任何“from __future__ import xxx”技巧或第三方库,可以将其回溯到3.6。

1
不可能,因为这是一个破坏性的语法更改。 - MegaIng
可能有其他的解决方法,但我看到了 https://github.com/asottile/future-fstrings 就感到很兴奋,但这并不能解决我的问题。 - Dilawar
@chepner 是的。因此无法添加到Python3.6中。 - MegaIng
1
使用3.7.1版本时出现语法错误。为什么会这样? - Tomerikoo
1
@Tomerikoo 因为它是Python3.8+。 - MegaIng
显示剩余3条评论
1个回答

2

这里是您需要的内容:https://github.com/MegaIng/python-magic/tree/master/encoding_magic

虽然我不建议在生产环境中使用此类代码,但它实现了您想要的Python3.6。

请注意,此软件包未发布在pypl上,因为在没有手动设置的情况下安装它可能会有问题。

这与您指向我的其他软件包相同,但它不允许在版本小于3.6的Python中使用fstrings,只实现了python3.6的=


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接