1. Learn
  2. /
  3. 课程
  4. /
  5. 高效编写 Python 代码

Connected

道练习

预览后续内容

在本练习中,您将对比使用「非 Pythonic」与「Pythonic」两种方式来遍历列表。

names = ['Jerry', 'Kramer', 'Elaine', 'George', 'Newman']

假设您想收集上述列表中长度不少于 6 个字母的名字。在其他编程语言中,常见做法是创建一个索引变量(i),用 i 来迭代列表,并通过 if 语句收集长度不少于 6 的名字:

i = 0
new_list= []
while i < len(names):
    if len(names[i]) >= 6:
        new_list.append(names[i])
    i += 1

下面我们来看看更「Pythonic」的做法。

说明 1/3

undefined XP
  • 1

    打印使用「非 Pythonic」方式创建的列表 new_list。

  • 2

    更「Pythonic」的做法是直接遍历 names 的元素,而不是使用索引变量。请打印 better_list。

  • 3

    最「Pythonic」的方式是使用列表推导式。请打印 best_list。