From bd0e413cf22f2aef407f088e8bdec55332c49eb3 Mon Sep 17 00:00:00 2001 From: HansBug Date: Tue, 30 Nov 2021 14:58:08 +0800 Subject: [PATCH] dev(hansbug): refactor tuple generator as iter generator --- .../config.json" | 4 +- .../iter.json" | 7 +++ .../iter.md" | 57 +++++++++++++++++++ .../tuple.json" | 17 ------ .../tuple.py" | 20 ------- 5 files changed, 66 insertions(+), 39 deletions(-) create mode 100644 "data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.json" create mode 100644 "data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.md" delete mode 100644 "data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.json" delete mode 100644 "data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.py" diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" index 881e1e9..a7f4e0c 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" @@ -2,10 +2,10 @@ "export": [ "list01.json", "list02.json", - "tuple.json", + "iter.json", "dict.json" ], "keywords": [], "children": [], "node_id": "python-3-17" -} \ No newline at end of file +} diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.json" new file mode 100644 index 0000000..d2279ee --- /dev/null +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.json" @@ -0,0 +1,7 @@ +{ + "author": "huanhuilong, HansBug", + "source": "iter.md", + "depends": [], + "exercise_id": 190, + "type": "code_options" +} \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.md" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.md" new file mode 100644 index 0000000..290add8 --- /dev/null +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/iter.md" @@ -0,0 +1,57 @@ +# Python 生成器推导式 + +Python 独步天下的推导式表达式,使用元表推式过滤长度小于等于4的书籍 + +```python +def test(): + books = ('程序员修炼之道', '构建之法', '代码大全', 'TCP/IP协议详解') + + # 此处请为reading进行正确的赋值 + + print("太长的书就不看了,只读短的:") + for book in reading: + print(" ->《{}》".format(book)) + + print("可是发现书的名字短,内容也可能很长啊!") + + +if __name__ == '__main__': + test() +``` + +请选出下列能**正确**实现这一功能的选项。 + +## 答案 + +```python +reading (book for book in books if len(book) <= 4) +``` + + + +## 选项 + +### A + +```python +reading = (books[i] for book in books: if len(book) < 4) +``` + +### B + +```python +reading = (book for book in books if len(book) < 4) +``` + +### C + +```python +reading = (book for book in books: if len(book) <= 4) +``` + + + + + + + diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.json" deleted file mode 100644 index fcd1a9a..0000000 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.json" +++ /dev/null @@ -1,17 +0,0 @@ -{ - "one_line": { - "if len(book) <= 4": [ - "if len(book) < 4" - ], - "for book in books": [ - "for book in books:" - ], - "book for book": [ - "books[i] for book" - ] - }, - "source": "tuple.py", - "depends": [], - "exercise_id": 194, - "type": "code_options" -} \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.py" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.py" deleted file mode 100644 index ad9d6d7..0000000 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/tuple.py" +++ /dev/null @@ -1,20 +0,0 @@ -# -*- coding: UTF-8 -*- -# 作者:huanhuilong -# 标题:Python 元组推导式 -# 描述:Python 独步天下的推导式表达式,使用元表推式过滤长度小于等于4的书籍 - - -def test(): - books = ('程序员修炼之道', '构建之法', '代码大全', 'TCP/IP协议详解') - - reading = (book for book in books if len(book) <= 4) - - print("太长的书就不看了,只读短的:") - for book in reading: - print(" ->《{}》".format(book)) - - print("可是发现书的名字短,内容也可能很长啊!") - - -if __name__ == '__main__': - test() -- GitLab