欢迎回来｡
我一直在提到这个关键的术语可迭代的, 但它到底是什么意思, 可迭代的？
你会在Python编程和其他编程语言中反复听到这句话｡
正如我们在上一个视频中所讨论的, 可食用仅仅意味着它是一个可以迭代的对象或集合｡
同样, 一个可迭代对象可以是一个列表, 可以是一个字典, 可以是一个元组, 可以是一个集合｡
它是一个项目集合｡
我们也看到了一个字符串是可以迭代的｡
这些东西是可迭代的, 因为它们可以被迭代｡
迭代意味着我们可以一个一个地进行｡
检查集合中的每一项｡
当你和Python程序员交谈时, 你会一遍又一遍地听到这些｡
所以你要确保你有那个词汇｡
你在重复某件事｡
你在绕圈｡
所以iterable是名词, iterated或iterate是对可迭代对象进行迭代的动作｡
我知道现在有点混乱｡
Python中的很多对象, 就像我说的, 都是可迭代的, 但是有一些特殊的对象我们还没有介绍｡
特别是字典｡
我们看到了如何迭代列表､ 元组､ 集合和字符串｡
但是一个物体呢？
假设这里有一个对象, 这个对象是用户, 用户或者用户.
我们会有一个名字咕噜｡
我们会有年龄5000, 六列, 相当老, 然后我们会说会游泳｡
咕鲁, 比方说, 不会游泳｡
假的｡
如果我们在这里使用这个物体呢？
对于用户和我方打印的物料｡
就在这里｡
项｡
你觉得会发生什么？
让我们运行这个｡
嗯, 我得到了一个错误, 因为我忘记了分号在这里｡
我们不想要老鹰｡
我们需要分号｡
显然这也需要一个字符串｡
现在, 如果我单击此处的“运行”｡
你看那个｡
我知道名字年龄不会游泳｡
所以我把字典的键印出来了｡
现在这本字典｡
我们有钥匙｡
很好, 但是｡
嗯嗯嗯
如果我想呢？
实际上, 是价值观｡
有办法做到这一点吗？
字典有三种方法, 当我们想要遍历它们的键和值时, 它们非常有用｡
第一个是物品｡
当我执行此操作并单击“运行”时, 将显示项目｡
您将看到我在一个元组中获得了键值对｡
这是一个非常常见的模式, 你会看到很多｡
又一个我们有的｡
就是价值观｡
你猜怎么着？
这是｡
这就给出了的值｡
字典｡
我们看到, 用户只要将其留空, 就可以得到密钥｡
但是我们有一个更具描述性的方法, 它允许我们确切地显示我们想要做的事情, 那就是键｡
如果我们运行这个｡
你会看到我可以遍历这些键｡
这三种方法都很常见, 在你的编程生涯中, 你会经常用到它们｡
因此, 请务必记下它们的项､ 值和键｡
它允许我们遍历字典｡
但是另一个有趣的事情, 也是迭代字典时的另一种常见模式是,
如果你想打印, 比如, 分别打印项的名称和列.
现在我们返回一个元组, 我们可以解包元组, 对吗？
我可以说key value等于item, 然后只打印key value｡
如果我运行这个｡
你看到了吗？
我可以打印这些｡
但实际上有一种简单的方法可以在for循环中实现, 我可以说key value.
完全避开这一整条线｡
如果我运行这个｡
你去那里｡
还能用｡
这也是一个很常见的模式, 如果你在收集字典的条目, 你可以把它们分成值,
或者你甚至可以看到简写, K和V｡
同样, 这些变量可以是您需要的任何变量｡
你可以给他们起名字｡
只要能让你的代码可读性更好就行｡
顺便说一下, 为了好玩, 我们在最后一行, 我想迭代50｡
你认为会发生什么事呢？
如果我单击“运行”｡
对不起, 我不知道
说出她的名字｡
名称键｡
哦, 我在这里得到一个错误, 因为我还没有改变这些, 所以让我们把这些改回来｡
这不是我所期待的错误｡
我所期待的错误是这样的｡
类型错误, int对象不可迭代
这个错误现在应该说得通了, 因为我已经讲了很多遍了.
为什么它不可迭代？
因为它不是一个可以迭代的对象｡
它不是一个项的集合, 因为我们在Python中学过｡
这些都是可迭代的｡
下一个视频里见｡
再见, 再见, 再见