文章目录

  • 以练促学
    • 练习 1,在 Python 中反转给定的 List
    • 练习 2,按索引连接两个 List
    • 练习 3,给出一个数字类型的 Python List。将 List 中的每一项转换成它的平方
    • 练习 4,连接两个 List
    • 练习 5,给出两个 Python List。同时迭代这两个 List,第一个 List 以原始顺序显示,第二个 List 以相反顺序显示
    • 练习 6,从字符串 List 中删除空字符串
    • 练习 7,在下面的 Python List 中 6000 之后添加元素 7000
    • 练习 8,扩展嵌套字符串 List
    • 练习 9,给定一个 Python List,在 List 中找到值 20,如果它存在,用 200 替换它。只更新第一次出现的值
    • 练习 10,给定一个 Python List,从 List 中删除所有出现 20 的值

以练促学

以练促学可能是巩固所学的最佳方法之一,当然,学 Python 也不例外。继昨天在 CSDN 发布 《Python 基础备忘之 List 篇》 的知识整理后,继续整理 List 知识相关的练习,以练促学

本文一共整理了 10 题 Python List 练习题,所涵盖知识包括:

  1. Python List 操作;
  2. Python List 函数;
  3. Python List 切片;
  4. Python List 推导式;

这些练习题都收集自网络,灵感来源于 Edabit ,Edabit 是收集各种编程语言(JS、Python、Ruby、Swift、PHP、Java、C#、C++)练习题的网站,可以在线编码,然后验证答案。其官方 “About Edabit” 中有一句介绍是:

We’re like Duolingo for learning to code.

大概是像 Duolingo (多邻国)学习外语一样学习编码吧。之所以喜欢 Edabit 的原因是,在每道练习中的 Resources 里都包含了这道题的相关联知识,这样就能清楚知道练习和哪些知识有关,在大量练习后就能更牢固掌握所学知识了。

练习题的描述:

练习题的相关知识点资源列表:

遗憾的是 Edabit 现在是有限免费使用,需要成为 Pro 用户才能“畅通无阻”,而且价格小贵,重要的是暂时还不支持国内的信用卡支付。所以,如果我的练习题是来自 Edabit 的话,并不能查看答案,那么答案就有可能是错误的,也欢迎在评论区批评指正

练习题的答案,只有 Pro 用户才能查看所有题目的答案

练习 1,在 Python 中反转给定的 List

l = [1, 2, 3, 4, 5]

预期结果:

[5, 4, 3, 2, 1]

解决方案:

# 切片方法
l = l[::-1]# sort(*, key=None, reverse=False) 方法
l.sort(reverse = True)

练习 2,按索引连接两个 List

l1 = ["M", "na", "i", "Ke"]
l2 = ["y", "me", "s", "lly"]

预期结果:

['My', 'name', 'is', 'Kelly']

解决方案:

l3 = [i + j for i, j in zip(l1, l2)]

练习 3,给出一个数字类型的 Python List。将 List 中的每一项转换成它的平方

l = [1, 2, 3, 4, 5, 6, 7]

预期结果:

[1, 4, 9, 16, 25, 36, 49]

解决方案:

l =  [x * x for x in l]

练习 4,连接两个 List

l1 = ["Hello ", "take "]
l2 = ["Dear", "Sir"]

预期结果:

['Hello Dear', 'Hello Sir', 'take Dear', 'take Sir']

解决方案:

l3 = [x+y for x in l1 for y in l2]

练习 5,给出两个 Python List。同时迭代这两个 List,第一个 List 以原始顺序显示,第二个 List 以相反顺序显示

l1 = [10, 20, 30, 40]
l2 = [100, 200, 300, 400]

预期结果:

10 400
20 300
30 200
40 100

解决方案:

for x, y in zip(l1, l2[::-1]):print(x, y)

练习 6,从字符串 List 中删除空字符串

l1 = ["Mike", "", "Emma", "Kelly", "", "Brad"]

预期结果:

["Mike", "Emma", "Kelly", "Brad"]

解决方案:

l2 = list(filter(None,l1))

练习 7,在下面的 Python List 中 6000 之后添加元素 7000

l1 = [10, 20, [300, 400, [5000, 6000], 500], 30, 40]

预期结果:

[10, 20, [300, 400, [5000, 6000, 7000], 500], 30, 40]

解决方案:

l1[2][2].append(7000)

练习 8,扩展嵌套字符串 List

l1 = ["a", "b", ["c", ["d", "e", ["f", "g"], "k"], "l"], "m", "n"]

预期结果:

['a', 'b', ['c', ['d', 'e', ['f', 'g', 'h', 'i', 'j'], 'k'], 'l'], 'm', 'n']

解决方案:

subList = ["h", "i", "j"]
l1[2][1][2].extend(subList)

练习 9,给定一个 Python List,在 List 中找到值 20,如果它存在,用 200 替换它。只更新第一次出现的值

l1 = [5, 10, 15, 20, 25, 50, 20]

预期结果:

[5, 10, 15, 200, 25, 50, 20]

解决方案:

index = l1.index(20)
l1[index] = 200

练习 10,给定一个 Python List,从 List 中删除所有出现 20 的值

l1 = [5, 20, 15, 20, 25, 50, 20]

预期结果:

[5, 15, 25, 50]

解决方案:

def removeValue(l, val):return [value for value in l if value != val]l2 = removeValue(l1, 20)

Python 以练促学之 List 篇相关推荐

  1. Python学习---入门导学篇

    Python学习---入门导学篇 Python的特点 Python受人喜欢的原因 Python的缺点 Python能做什么? Python基础语法 Python的特点 1.Python是一门编程语言, ...

  2. python n个list如何组成矩阵_学完Python,我决定熬夜整理这篇总结...

    来源:http://suo.im/5wzRqt 前言:学完Python,我决定熬夜整理这篇总结- 一.了解Python Python之父 Guido Van Rossum,一位荷兰程序员,在1989年 ...

  3. python零基础能学吗 知乎-如何零基础入门 Python?

    从17年6月入门Python到今天有大半年了,总结一下这半年来自学Python的路径. 本人只在两年前接触过HTML和CSS,但严格来说这两门只能算是标记语言而非编程语言,而且开始学Python的时候 ...

  4. python练手经典100例-Python 的练手项目有哪些值得推荐?

    首先两点建议:最好不要写太应用的程序练手,如果你发现你写程序的大部分时间都在查库手册(或者类似的事情),那就是大家所说的"搬砖"了:要思考什么更像是知识,什么只是经验,还是那句老话 ...

  5. python小白练手集合

    人工智能是都要会Python吗?前两天老师一个师兄演示写神经网络,一屋子人就我连python语法都是小白马= = 这两天在网上找了一些公开课在学python,然后呢~课程有点枯燥,理论方面的有很多小花 ...

  6. python从0开始学编程课件_小白从零开始学编程(三)--python基本概念

    前言 从2020年3月份开始,计划写一系列文档--<小白从零开始学编程>,记录自己从0开始学习的一些东西. 第一个系列:python,计划从安装.环境搭建.基本语法.到利用Django和F ...

  7. 学了python能干啥-第9p,Python是什么?学了Python能干什么?

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第9篇文章,第二阶段的课程:Python基础知识之Python语言介绍 学习本课程,建议先学习:[计算机基础知识]课程 一.Pyth ...

  8. python零基础难学吗-如何从零开始学习Python,零基础学python难吗

    Python并不难学,它诞生至今已经过25个年头,但相对于其他语言,它更加易学.易读,非常适合快速开发,Python编程简单直接,更适合初学编程者. 那么,如何从零开始学习python呢? 可以分为这 ...

  9. python没基础可以学吗-终于认识没有基础怎么学python

    在学习完Python的基础知识之后,有很多朋友为自己接下来要干什么感到迷茫.不知道应该通过什么样的项目来锻炼自己编程水平和思维能力.接下来我就给大家说几个适合Python的新手项目和练手项目,Pyth ...

最新文章

  1. go 基准测试 找不到函数_Go 中的内联优化 | Linux 中国
  2. vue 项目初始化时,npm run dev报错解决方法
  3. Spring事务传播特性实例解析
  4. 在html使用a标签 直接下载图片 不通过后台实现直接下载
  5. datatable.select()的一个问题
  6. 提搞网站访问速度可做哪些优化
  7. 人力资源社会保障部关于公布国家职业资格目录的通知
  8. Linux内核驱动调试,Linux内核设备驱动之内核的调试技术笔记整理
  9. 第一百七十四天 how can i 坚持
  10. liger UI tree DATA添加值
  11. numpy - np.append
  12. Oracle USE_LARGE_PAGES初始化参数
  13. Android友盟分享(微信简单集成)
  14. 计算机网络(第七版)思维导图
  15. 微软商店下载的软件怎么放到桌面?
  16. 无人机探测雷达软硬件解决方案
  17. 计算机硬盘从盘的设置,图文解说:电脑硬盘的主从盘设置方法_清风一笑
  18. 【系统化学习】CSDN算法技能树测评
  19. mysql 回归分析_统计科学之多元回归分析
  20. 我是不是该安静的走开

热门文章

  1. 计算机制作不同数据数据图表,数据图表与分析.doc
  2. Python爬虫获取京东大数据!其实爬虫真的很简单!
  3. VideoCodec 入门篇 - 00 (编解码简介)
  4. body与html 会有间隙,css – thead和tbody之间的间距
  5. 谷歌Cloud、Paly 中的XSS 漏洞可导致账户劫持
  6. Win10系统上搭建GIT本地服务器
  7. 【路径规划】基于蚁群算法的多配送中心车辆路径优化方法matlab代码
  8. C语言:记录在主线程中停止子线程
  9. python运行文件时说系统找不到指定文件-python找不到指定文件
  10. 北京市高等教育英语听力计算机考试,北京市2018年高考英语听力机考问答