
50 天 Python 闯关教程
文章平均质量分 94
本专栏以闯关模式设计 50 天学习内容,每天都是一个新关卡。从基础语法的 “新手村” 出发,历经条件循环、函数模块等 “副本挑战”,再到 Web 开发、数据分析等中级 “大 BOSS” 关卡。每一关都有清晰的学习目标、详细的知识讲解、实战代码演练,助你一路升级,实现从 Python 小白到中级能手
优惠券已抵扣
余额抵扣
还需支付
¥19.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
Clf丶忆笙
倔强技术人,代码写得稀烂,博客更新不断。坚持用“菜”证明:我还能再抢救一下!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
python环境搭建(window环境)
在windows系统下搭建Python开发环境,Aptana 开发工具集成在Eclipse上1,首先访问http://www.python.org/download/去下载最新的python版本。2、安装下载包:python-3.6.4-amd64.exe(安装版)搭配JDK1.8、Eclipse4.6版本。3、为计算机添加安装目录搭到环境变量,如图把python的安装目录添加到p...翻译 2018-09-02 12:51:45 · 274 阅读 · 0 评论 -
python的常用模块基础
python的常用模块基础sys模块:sys.argv 命令行参数List,第一个元素是程序本身路径sys.exit(n) 退出程序,正常退出时exit(0)sys.version 获取Python解释程序的版本信息sys.maxint 最大的Int值sys.path 返回模块的搜索路径,初始化时使用PYTHON...翻译 2018-09-02 13:05:53 · 852 阅读 · 0 评论 -
第一天:Python简介与安装
Python由荷兰程序员吉多·范罗苏姆(Guido van Rossum)于1989年底开始开发,当时他在荷兰国家数学和计算机科学研究所(CWI)工作。Python的开发初衷是为了创建一种易于阅读、功能强大且可扩展的高级编程语言。Python这个名字并非来源于蟒蛇,而是取自英国喜剧团体Monty Python的飞行马戏团(Monty Python's Flying Circus)。范罗苏姆是这个喜剧团体的粉丝,因此在命名时选择了Python,这也反映了Python语言设计中的幽默和轻松风格。原创 2025-05-27 09:04:31 · 780 阅读 · 0 评论 -
第二天:Python开发环境配置与工具选择
本文详细介绍了Python开发环境的配置与管理,重点包括:1)Python解释器的安装与多版本管理;2)主流代码编辑器/IDE(如VSCode、PyCharm、Jupyter)的选择与配置技巧;3)虚拟环境(venv、conda)的创建与管理方法,强调项目隔离的重要性;4)包管理工具的使用。文章通过对比表格和配置示例,为开发者提供了从基础到高级的Python环境搭建指南,特别适合需要管理多个Python项目或处理不同版本需求的开发人员参考。原创 2025-05-27 09:05:45 · 1143 阅读 · 0 评论 -
第三天:Python基础语法详解
Python代码规范与注释最佳实践 摘要: 本文深度解析Python缩进规则与代码结构的技术规范,包括缩进的底层原理、语法规则和错误处理。详细阐述Python注释系统,涵盖行内注释、文档字符串和类型注释等多种形式,并提供工业级代码组织方案。研究显示,良好的缩进可提升40%的代码识别速度,降低50%的认知负荷。文章还对比了Sphinx、pdoc等主流文档生成工具,给出企业级项目中的注释编写原则和模板建议,帮助开发者构建更可维护的Python代码。原创 2025-05-27 09:06:59 · 815 阅读 · 0 评论 -
第四天:Python变量与数据类型
本文介绍了Python编程中变量的定义与赋值、基本数据类型等核心概念。变量是存储数据的容器,具有动态类型、引用语义等特点,遵循特定的命名规则和管理机制。Python的基本数据类型包括整型(int)、浮点型(float)、布尔型(bool)和字符串(str),每种类型都有其特性和操作方法。数值类型支持各种数学运算,布尔型用于逻辑判断,字符串则提供丰富的操作和方法。理解这些基础概念对掌握Python编程至关重要。原创 2025-05-27 09:07:38 · 970 阅读 · 0 评论 -
第五天:Python数字类型操作
Python提供了丰富的数字类型和运算功能,主要包括整数(int)、浮点数(float)和复数(complex)。整数具有无限精度,支持多种进制表示;浮点数遵循IEEE 754标准,存在精度限制。Python支持基本算术运算(+、-、*、/等)、增强赋值运算符以及类型转换。运算符优先级遵循数学惯例,混合类型运算时会自动转换。内置函数如abs()、round()、pow()等提供常用数学功能,而math模块则包含更高级的数学函数。理解这些数字类型的特点、运算规则及底层表示,对于编写正确高效的Python程序至原创 2025-05-27 09:08:29 · 846 阅读 · 0 评论 -
第六天:Python字符串操作
Python字符串基础与操作指南 本文全面介绍了Python字符串的核心概念和操作方法。主要内容包括: 字符串基础:解释了字符串作为Unicode码点不可变序列的特性,介绍了单引号、双引号、三引号、原始字符串和字节字符串五种表示方式 索引与切片:详细讲解了正向/负向索引、切片操作(包括步长设置)和边界处理,以及三种字符串遍历方法 常用字符串方法:分类介绍了大小写转换方法、查找替换方法等功能,包含find()、replace()等实用方法的示例 文章通过代码示例展示了字符串处理的典型应用场景,帮助读者掌握Py原创 2025-05-27 09:09:15 · 872 阅读 · 0 评论 -
第七天:Python运算符详解
本文深入解析了Python运算符优先级和身份运算符的使用。第一部分详细介绍了运算符优先级规则,通过完整表格展示各运算符优先级顺序,结合实例演示计算步骤,并指出常见优先级陷阱及最佳实践,强调括号使用的重要性。第二部分重点剖析身份运算符is与is not,通过对比==运算符阐明其本质区别,分析适用场景(如None比较、单例模式),并讨论其在性能优化方面的优势。文章通过大量代码示例帮助读者理解概念差异,为编写高效可靠的Python代码提供实用指导。原创 2025-05-27 09:10:00 · 958 阅读 · 0 评论 -
第八天:Python布尔值与比较运算
Python中的布尔值是基本数据类型,只有True和False两种值,实际上是整数的子类(True=1,False=0)。布尔值通过直接赋值、比较运算、逻辑运算或布尔函数产生,广泛应用于条件判断、循环控制和数据过滤等场景。比较运算符(如==、>、<等)用于值比较,而is运算符用于对象身份比较。逻辑运算符(and、or、not)具有短路特性,可能返回操作数值而非布尔值。理解运算符优先级对编写正确表达式至关重要,布尔运算在条件组合、默认值设置等场景中发挥关键作用。原创 2025-05-27 09:10:47 · 1001 阅读 · 0 评论 -
第九天:Python列表(List)详解
本文介绍了Python列表的基础知识和操作技巧。第一部分概述了列表的核心特性(有序、可变、可异构)和创建方法,包括直接定义、构造函数、推导式等。第二部分详细讲解了列表索引(正向/负向)和切片操作,展示了如何获取子列表及修改内容。文章还涵盖了切片赋值、多维列表处理等进阶技巧,并通过代码示例说明了列表的内存模型和操作注意事项。全文提供了丰富的代码演示,帮助读者全面掌握Python列表的使用方法。原创 2025-06-07 21:39:49 · 915 阅读 · 0 评论 -
第十天:Python元组(Tuple)详解
元组是Python中不可变、有序的数据结构,适合存储不同类型的数据。创建元组有多种方式:圆括号直接创建、tuple()构造函数转换、单元素元组需加逗号等。元组的不可变性使其具有安全性、哈希性和高性能等特点,可作为字典键或函数返回值。虽然元组本身不可修改,但其包含的可变对象(如列表)仍然可以更改。这种特性使得元组在需要固定数据、多线程安全和字典键等场景中非常实用。原创 2025-06-07 21:41:05 · 761 阅读 · 0 评论 -
第十一天:Python集合(Set)详解
集合(Set)是Python中的一种内置数据类型,用于存储无序的、唯一的元素集合。集合与列表(list)和元组(tuple)的主要区别在于:集合中的元素是无序的,不像列表那样有确定的顺序集合中的元素必须是唯一的,不允许重复集合中的元素必须是不可变的(可哈希的)类型集合在Python中用花括号{}表示,或者使用set()构造函数创建。集合在数学上类似于集合论中的集合概念,支持各种集合运算如并集、交集、差集等。原创 2025-06-07 21:42:21 · 840 阅读 · 0 评论 -
第十二天:Python字典(Dict)详解
字典(Dictionary)是Python中最强大的数据类型之一,它是一种可变的、无序的键值对(key-value)集合。字典中的元素是通过键(key)来存取的,而不是通过偏移量(如列表中的索引)。字典的核心特性包括:键值对结构:每个元素由一个键和一个值组成,中间用冒号(:)分隔无序性:字典中的元素没有固定的顺序(Python 3.7+版本中字典会保持插入顺序,但不应依赖此特性进行顺序操作)可变性:可以动态地添加、修改或删除键值对键的唯一性:字典中的键必须是唯一的,如果重复,后面的键值对会覆盖原创 2025-06-07 21:49:13 · 1046 阅读 · 0 评论 -
第十三天:Python控制结构与循环控制
本文介绍了Python中条件语句和循环结构的使用方法。条件语句部分详细讲解了if-elif-else结构的语法、执行原理和应用场景,包括嵌套条件和真值测试。循环部分重点阐述了for循环的工作原理、可迭代对象类型,以及range()、enumerate()和zip()等实用函数的使用技巧。文章通过代码示例展示了如何高效处理各种条件判断和迭代需求,并提供了最佳实践建议。这些基础知识是Python编程的重要组成部分,适用于数据处理、自动化脚本等多种应用场景。原创 2025-06-09 12:35:47 · 914 阅读 · 0 评论 -
第十四天:Python数组(array)类型详解
Python的array模块提供了高效存储同类型数值数据的数组结构,相比列表更节省内存且操作更快。文章详细解析了array模块的基本概念、与列表的对比、适用场景及具体使用方法。主要内容包括:1)array的类型码(type code)系统;2)数组创建与初始化方法;3)基本元素访问和修改操作;4)特殊属性和方法如typecode、itemsize、buffer_info()等;5)高级文件I/O操作。array模块特别适合数值密集型计算、内存优化及与C/C++代码交互等场景,是处理大量同类型数据的理想选择。原创 2025-06-09 12:37:00 · 783 阅读 · 0 评论 -
第十五天:Python冻结集合(frozenset)详解
Python提供了两种主要的集合类型:可变集合(set)和不可变集合(frozenset)。它们在Python类型体系中的位置如下表所示:集合类型 可变性 可哈希性 使用场景 示例set 可变 不可哈希 需要动态增删元素的集合 {1, 2, 3}frozenset 不可变 可哈希 需要作为字典键或元素的集合 frozenset([1, 2, 3])集合(Set)是Python中的一种内置数据类型,用于存储无序的唯一元素。与列表和元组不同,集合不支持索引操作,但提供了高效的成员检测和数学集合运算。原创 2025-06-09 12:38:11 · 968 阅读 · 0 评论 -
第十六天:Python数据结构互相转换(全网最全)
Python提供了多种内置数据结构,每种结构都有其独特的特点和适用场景。理解这些数据结构的特性和相互转换方法是Python编程的基础技能。元组(Tuple):不可变有序序列,用圆括号表示,如(1, 2, 3)。一旦创建,其元素不能被修改、添加或删除。元组通常用于存储不应更改的相关数据集合。列表(List):可变有序序列,用方括号表示,如[1, 2, 3]。列表可以动态修改,是最常用的Python数据结构之一。字典(Dictionary):可变键值对集合,用花括号表示,如{'a': 1, 'b':原创 2025-06-09 12:39:28 · 1060 阅读 · 0 评论 -
第十七天:Python模块与包详解
Python模块基础与使用指南 摘要:本文系统介绍了Python模块的基础概念与使用方法。模块是包含Python代码的.py文件,用于组织相关功能,通过命名空间避免命名冲突。文章详细讲解了模块的创建、结构、命名规则和最佳实践,包括文档字符串、测试代码的规范写法。在模块导入方面,对比分析了import、from...import等多种方式的特点与适用场景,解释了模块搜索路径机制和相对/绝对导入的区别。最后针对循环导入等常见问题提供了解决方案。掌握这些知识能帮助开发者编写更规范、可维护的Python代码。原创 2025-06-09 12:40:33 · 1094 阅读 · 0 评论 -
第十八天:Python函数基础详解
函数编程基础摘要(149字) 函数是编程中的核心概念,指可重复调用的代码块,具有封装性、模块化和可重用特性。Python使用def关键字定义函数,包含函数名、参数、文档字符串和函数体。函数调用时创建独立命名空间,按位置或关键字传递参数,支持默认值设置。参数传递采用对象引用机制,可变对象在函数内修改会影响原始数据。函数提高代码复用性、可读性和可维护性,是程序模块化设计的基础工具。良好函数命名应遵循snake_case规范,明确体现功能。理解函数执行流程和内存模型对掌握编程至关重要。原创 2025-06-09 12:41:24 · 1041 阅读 · 1 评论 -
第十九天:Python数据库编程基础
SQLite3是Python内置的轻量级嵌入式数据库模块,适用于小型到中型应用。摘要要点:1) SQLite无需配置,采用单文件存储,支持ACID特性;2) 基本操作包括连接建立、CRUD操作和事务管理,示例代码展示了参数化查询和批量操作;3) 遵循DB-API 2.0规范,通过游标执行SQL,注意资源释放和异常处理;4) 支持事务的原子性操作,确保数据一致性。SQLite3以其简单易用、低资源消耗成为Python本地数据库存储的理想选择。原创 2025-06-11 14:37:37 · 977 阅读 · 0 评论 -
第二十天:Python文件(File)操作详解
本文系统介绍了Python文件操作的核心概念与实践技巧。第一部分阐述了文件系统原理、打开模式选择及编码处理要点,强调了UTF-8编码的优势和使用场景。第二部分详细讲解了文件打开关闭的两种方式,重点推荐with语句的自动资源管理机制,并分析了高级参数对文件处理的影响。第三部分提供了多种文件读取方法,针对大文件处理给出了内存优化的迭代方案。全文贯穿专业实践建议,涵盖文件描述符、缓冲区等底层原理,为Python开发者提供了全面的文件操作指南。原创 2025-06-11 14:39:03 · 687 阅读 · 0 评论 -
第二十一天:Python列表推导式与生成器表达式
Python列表推导式高效创建列表的语法糖 摘要: 本文介绍了Python中列表推导式的基础概念、语法结构及应用场景。列表推导式通过简洁的语法[expression for item in iterable]替代传统for循环,可快速生成新列表,具有代码简洁和执行速度快的优势。文章详细讲解了基本用法、条件过滤(单条件和复杂条件)、嵌套循环等进阶技巧,并通过商品价格计算、温度转换等实例展示其应用。同时对比了列表推导式与生成器表达式的内存效率差异,指出生成器表达式更适合处理大数据集。性能测试表明列表推导式通常比原创 2025-06-11 14:40:12 · 1065 阅读 · 0 评论 -
第二十二天:Python函数进阶
本文系统介绍了Python函数参数的使用技巧和函数对象特性。主要内容包括:1)默认参数的定义与使用注意事项,特别是避免可变对象作为默认参数的陷阱;2)可变参数*args和**kwargs的原理与应用场景,以及它们如何收集位置参数和关键字参数;3)Python函数参数的完整顺序规则,包括仅关键字参数的特殊用法。此外,还阐述了Python函数作为"一等公民"的特性,如可赋值、可传递、可返回等能力。这些知识对于编写灵活、可维护的Python代码至关重要,特别是在设计API和实现装饰器等高级功能原创 2025-06-11 14:41:58 · 948 阅读 · 0 评论 -
第二十三天:Python异常处理
本文介绍了Python异常处理的核心概念与实践方法。主要内容包括:异常处理的基础概念与重要性,try-except-else-finally结构的详细解析,以及Python内置异常类型体系。异常处理是编程中管理错误的关键机制,可提高程序稳定性、用户体验和代码可维护性。文章详细讲解了各种异常处理结构的使用场景和最佳实践,并系统梳理了Python的异常类层次结构和常见内置异常类型。通过合理的异常处理,开发者可以构建更健壮、可靠的Python应用程序。原创 2025-06-11 14:43:05 · 620 阅读 · 0 评论 -
第二十四天:Python面向对象编程基础
本文全面介绍了Python面向对象编程(OOP)的核心概念。首先阐述了类与对象的基本概念,类作为创建对象的模板,对象则是类的具体实例。其次详细讲解了属性与方法,包括实例属性、实例方法以及self参数的作用,并比较了实例方法、类方法和静态方法的区别。最后深入剖析了构造函数__init__和__new__的作用机制与实际应用场景。文章通过代码示例展示了OOP的封装特性,为Python开发者提供了面向对象编程的系统性指导。原创 2025-06-12 08:58:48 · 928 阅读 · 0 评论 -
第二十五天:Python面向对象编程进阶
本文深入探讨Python面向对象编程的进阶主题,重点介绍继承与方法重写、多态与鸭子类型等核心概念。在继承方面,讲解了父类和子类的关系、方法重写的实现原理以及super()函数的使用方法,特别是多重继承中的方法解析顺序(MRO)。在多态方面,分析了Python独特的鸭子类型实现方式,强调关注对象行为而非类型的特点,并通过示例展示了不同类型对象如何通过相同接口交互。文章还涉及魔术方法和不同类型方法等高级主题,为Python面向对象编程提供了全面指导。原创 2025-06-12 08:59:46 · 709 阅读 · 0 评论 -
第二十六天:Python面向对象编程之继承、封装、多态
本文摘要介绍了Python面向对象编程(OOP)的核心概念,包括封装、继承和多态三大特性。在封装部分,详细讲解了如何通过命名约定(_和__)和@property装饰器实现数据保护和访问控制。继承部分阐述了代码复用和类层次结构的实现方式,展示了单继承的基本语法。文章通过Dog、BankAccount、Temperature和Employee等实用类示例,演示了OOP在实际编程中的应用,包括属性验证、计算属性和方法封装等技巧,为Python开发者提供了面向对象编程的实践指导。原创 2025-06-12 09:00:41 · 642 阅读 · 0 评论 -
第二十七天:Python迭代器与生成器
本文详细介绍了Python中的可迭代对象与迭代器协议。可迭代对象(Iterable)指能用for循环遍历的对象,如列表、元组、字典等,它们实现了__iter__()方法。迭代器则通过__iter__()和__next__()方法实现,能保持迭代状态,但只能遍历一次。文章对比了两者的区别,并展示了如何验证对象类型。此外,还讲解了自定义迭代器的实现方法,包括状态保持机制和分离可迭代对象与迭代器的最佳实践,通过代码示例说明了如何创建支持多次迭代的类。原创 2025-06-12 09:01:24 · 1054 阅读 · 0 评论 -
第二十八天:Python上下文管理器
Python上下文管理器:资源管理的优雅方案 上下文管理器是Python用于管理资源的核心机制,通过__enter__和__exit__方法确保资源正确分配和释放。主要特点包括: 简化资源管理:自动处理资源释放,无需手动调用close()等方法 强大的异常处理:__exit__方法可以捕获和处理异常 使用方式灵活:既可通过类实现协议,也可使用contextlib模块的装饰器快速创建 关键实现方式: 类实现:完整定义__enter__和__exit__方法 @contextmanager装饰器:将生成器函数转原创 2025-06-12 09:02:20 · 718 阅读 · 0 评论 -
第二十九天:Python正则表达式re模块
正则表达式是用于文本处理的强大工具,Python通过re模块提供支持。基础概念包括字面字符、元字符、字符类和量词等。re模块提供search()、match()、findall()等方法实现模式匹配、搜索替换等功能。使用时建议预编译正则表达式以提高性能,并使用原始字符串避免转义问题。常用模式包括基本元字符(如.、*)、字符类(如[a-z])、预定义字符类(如\d匹配数字)以及边界匹配(如^匹配行首)。这些功能组合可以实现复杂文本处理任务如数据验证、提取和格式化。原创 2025-06-12 09:03:21 · 698 阅读 · 0 评论 -
第三十天:Python文件系统操作
Python提供了丰富的文件系统操作模块,包括os、os.path、pathlib和shutil等,用于处理文件和目录操作。文章详细介绍了os.path模块的核心功能,如路径拼接(join)、分解(split)、属性检查(exists, isfile)和规范化处理(normpath)等。通过实用代码示例展示了如何获取文件信息、处理路径差异以及时间相关操作。这些工具能跨平台工作,自动适应不同操作系统的路径格式,是Python文件处理的基础设施。原创 2025-06-12 09:04:10 · 597 阅读 · 0 评论 -
第三十一天:Python常用内置模块
os模块提供了丰富的方法来处理文件和目录,是Python与操作系统进行交互的接口。它允许我们执行诸如读取/写入文件、操作目录、获取系统信息等任务。1.1.1 核心功能解析下表展示了os模块的主要功能分类及对应方法:os模块实际上是Python对操作系统API的封装。在Windows上,它主要封装了Win32 API;在Unix-like系统上,则封装了POSIX API。这种封装使得Python程序可以跨平台运行,而开发者无需关心底层系统的差异。通俗理解:想象os模块是一个多语言翻译,无论你在哪个原创 2025-06-23 08:45:17 · 583 阅读 · 0 评论 -
第三十二天:Python数据序列化
数据序列化是将数据结构转换为可存储或传输格式的过程。Python中主要使用json和pickle模块进行序列化,其中json适用于跨语言数据交换,pickle更适合Python专用场景。json模块提供dumps/dump和loads/load函数,支持基本数据类型转换,也能通过自定义编码器处理复杂对象。序列化技术广泛应用于持久化存储、进程通信和远程调用等场景,不同格式在可读性、安全性和性能上各有特点,如JSON易读但速度中等,MessagePack高效但不可读。对于自定义类对象,可以通过继承JSONEnc原创 2025-06-23 08:46:08 · 732 阅读 · 0 评论