‫欢迎回来｡
‫让我们来谈谈格式化字符串的主题｡
‫到目前为止, 我们只写了简单的字符串, 但是我们想要一个动态的, 静态的程序｡
‫假设我们有一个亚马逊页面, 实际上我们在亚马逊工作｡
‫当用户登录到他们的配置文件时, 我们希望显示他们的姓名或他们在购物车中的内容｡
‫在这种情况下, 我们不想只是硬编码和写每个用户的名字, 像安德烈或另一个用户乔,
‫写世界上的每个名字｡
‫不, 不, 不
‫理想情况下, 我们可以做的是有一些动态的东西, 假设这是一个个人资料页面, 我们只需要使用名称变量,
‫并在页面上显示它｡
‫这个name变量应该等于用户的名字, 我们可以从数据库中再次获取这个变量,
‫我们将在本课程后面讨论.
‫但我们假设在这里, 当我们执行equals时, 我们将获取一些用户信息.
‫这将是名字｡
‫现在这个名字是约翰或我们走吧, 约翰尼｡
‫我们想在个人资料页面上显示这个约翰尼｡
‫我们可以用带格式的字符串来实现｡
‫我们可以简单地执行类似print的操作, 然后说出name｡
‫但我们也要问候那个人｡
‫好吧, 我知道了
‫那就这么办吧｡
‫你好, 我是
‫然后加上名字并记得加一个空格｡
‫如果单击“运行”, 则会得到｡
‫嗨, 强尼｡
‫但随着我们得到越来越多的信息, 假设我们有年龄, 约翰尼是55岁｡
‫如果我想扩展这个句子, 我想说你是, 然后再加一个加号, 确保我们在这里加一个空格,
‫然后再加你的旧｡
‫罗恩恩｡
‫嗯嗯嗯
‫好吧, 我们得到一个类型错误｡
‫必须是字符串, 而不是整数｡
‫哦, 天哪｡
‫好的, 我们要把它转换成一个字符串｡
‫记住, 我们可以这样做｡
‫然后如果我单击“运行”｡
‫嗨, 强尼｡
‫您已年满55岁或以上｡
‫好吧, 我会的
‫这是一个有点麻烦, 但我们正在使我们的亚马逊页面动态｡
‫我们可以从数据库中获取不同的信息, 然后根据用户的不同, 在一个字符串中得到一些信息｡
‫但有一个更好的方法｡
‫对于带格式的字符串, 我们所要做的就是在开头加上一个F｡
‫开头的F会告诉Python, 这是一个格式化的字符串.
‫而不是做所有这些加号和名字, 以及所有这些东西, 然后做STR来转换类型｡
‫我们可以简单地这样做｡
‫让我们去掉这个, 简单地用括号括起来, 然后说name｡
‫然后再把这些都去掉｡
‫然后说h｡
‫所以我要叫你的名字｡
‫你已经h岁了｡
‫如果我在这里单击运行｡
‫你看它还能用｡
‫这是Python 3的一个新特性, 在开头添加了F｡
‫它说, 嘿, 这是一个格式化的字符串, 我想让你把这些变量作为字符串,
‫在这个字符串里面｡
‫那干净多了？
‫虽然这很好, 也很简洁, 这也是我在Python 3之前, 写字符串的首选方式,
‫但你们并没有这种方法.
‫所以在Python 2中, 请注意, 这在Python 3中也是有效的｡
‫正如您所看到的, 我们有一些不同的东西来完成这一点｡
‫我们有一个点格式的想法｡
‫和DOT格式, 所以我们去掉这里的F也会做同样的事情｡
‫我们在这里做一个括号, 然后我们说, 嘿, 我们要约翰尼｡
‫和55岁, 我们可以删除这些变量名｡
‫如果我在这里单击运行｡
‫嗯嗯嗯
‫我得到一个错误, 你必须小心这里｡
‫点格式适用于字符串, 但你可以看到我们在括号外使用了点格式｡
‫它所做的就是说, 嘿, 在这个打印上运行格式操作｡
‫但print并不是真正的字符串, 对吧？
‫所以你必须确保我们把括号移到了外面, 这样我们才能先计算这段代码｡
‫字符串会被格式化, 然后我们会打印出来.
‫如果我运行这个｡
‫嗨, 强尼｡
‫你已经55岁了｡
‫这也是一样的｡
‫但是如果我们想使用变量呢？
‫因为现在我们只是奉命行事｡
‫所以先出现的内容会先填入括号中｡
‫好吧, 我们可以做一些像名字｡
‫和H.
‫让我想想｡
‫我们能做到吗？
‫我们跑吧
‫你去那里｡
‫同样的道理｡
‫如果我们有一个特定的顺序呢？
‫也许我们希望这里是年龄, 这里是名字｡
‫好吧, 我们可以把它们混在一起｡
‫我们可以说这里是1, 这里是0, 因为在计算机科学中, 我们总是从0开始计数｡
‫所以这是0, 这是1｡
‫如果这里还有其他变量, 比如说第三个变量, 那么这个就是｡
‫来｡
‫如果我在这里单击运行｡
‫好吧, 我会的
‫一切都颠倒了｡
‫最后, 如果我愿意, 我可以创建自己的变量｡
‫所以让我们打个招呼｡
‫假设新名称等于｡
‫莎莉的年龄等于, 比如说, 100岁.
‫萨莉很老了｡
‫现在, 如果我执行0, 假设是1, 我在这里单击Run｡
‫所以现在我们实际上会得到一个超出范围的错误元组索引｡
‫现在, 我们还没有真正了解元组和范围, 这有点令人困惑, 但这是一个小技巧｡
‫我们要确保我们现在添加, 因为我们已经给予｡
‫实际的变量, 一个值, 我们需要在这里说新的名字｡
‫这里是H｡
‫所以如果我单击“运行”｡
‫你去那里｡
‫嗨, 莎莉｡
‫你已经100岁了｡
‫正如您在DOT格式中所看到的, 事情稍微复杂一些｡
‫你还是会看到这个和所有的蟒蛇｡
‫代码仍然使用DOT格式, 你会看到很多Python的三个代码库仍然使用格式, 因为有些人更喜欢它｡
‫但我认为F.
‫在带格式字符串的开头是要走的路, 因为｡
‫这让事情变得简单多了, 对吧
‫漂亮又干净, 漂亮又轻松｡
‫因此, 我建议您使用前面带有F的格式化字符串｡
‫简而言之, 我们通常称之为F弦｡
‫好吧, 我会的
‫下次见｡
‫再见, 再见, 再见