首页 > 解决方案 > Flask 语法 f-string 带单引号

问题描述

在 Flask 教程中,https://www.youtube.com/watch?v= cYWiDiIUxQc&list=PL-osiE80TeTs4UjLw5MM6OjgkjFeUxCYH&index=4 有一个我想了解的语法

return f"Post('{self.title}', '{self.dateposted}')"

有人可以为我分解这条线吗?

  1. Post()f string 表示以字符串形式返回结果
  2. '{self.title}'是一个字符串参数,因为''
  3. {}用于获取变量。
  4. 但是在上下文self.title中已经是一个字符串,为什么要使用' '?我的解释正确吗?在这里做什么' '

标签: pythonf-string

解决方案


__repr__在本教程中,他为类的方法返回此值。在对象上
调用此方法时会调用此方法。如果没有为它实现方法,repr()它也会在您使用str()print()类时调用。__str__

实现__repr__方法的目的是帮助调试。
如果您尝试在定义 a的情况下打印对象__repr__,它会打印出 like <Post object at 0x00000000>,这无济于事!

单引号是用来装饰的,其实没有必要。


另请参阅:__str__ 和 __repr__ 之间的区别?

您可能还对阅读Luciano Ramalho 的 Fluent Python感兴趣,因为它涵盖了这些方法并给出了如何使用它们的很好的示例(除了许多其他 Python 智慧)


推荐阅读