欢迎回来｡
让我们来谈谈格式化字符串的主题｡
到目前为止, 我们只写了简单的字符串, 但是我们想要一个动态的, 静态的程序｡
假设我们有一个亚马逊页面, 实际上我们在亚马逊工作｡
当用户登录到他们的配置文件时, 我们希望显示他们的姓名或他们在购物车中的内容｡
在这种情况下, 我们不想只是硬编码和写每个用户的名字, 像安德烈或另一个用户乔,
写世界上的每个名字｡
不, 不, 不
理想情况下, 我们可以做的是有一些动态的东西, 假设这是一个个人资料页面, 我们只需要使用名称变量,
并在页面上显示它｡
这个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弦｡
好吧, 我会的
下次见｡
再见, 再见, 再见