函数的闭包闭包是指在一个函数内部定义的函数,并且该内部函数可以访问外部函数的变量。 在 Python 中,函数是一等公民,可以作为参数传递,也可以作为返回值返回。 闭包的特点是内部函数可以访问外部函数的变量,即使外部函数已经执行完毕,这些变量仍然可以被内部函数访问和使用。示例:def outer_function(x): def inner_function(y):
Python 中,生成器(Generator)是一种特殊的迭代器,它可以通过函数来创建。生成器函数使用 yield 关键字来产生一个值,并且在每次调用 yield 时暂停执行,保留函数的状态,以便下次调用时可以从上次暂停的地方继续执行。生成器具有以下特点:生成器函数使用 def 关键字定义,但是它们的执行方式与普通函数不同。当生成器函数被调用时,它返回一个生
迭代器对象本质上是一个类的实例,而在一个类中我们可以定义其对应的方法。迭代器本质上也是一个对象,是一个实现了 __iter__() 和 __next__() 方法的对象。它用于遍历可迭代对象中的元素。其中,__iter__() 方法会返回它自身,__next__() 方法用于返回本次迭代应该返回的元素,直到没有元素可返回时,需要抛出&nb
Excel 简介Excel 是 Microsoft(微软)为使用 Windows 和 macOS 操作系统开发的一款电子表格软件。Python 操作 Excel 需要三方库的支持,如果要兼容 Excel 2007 以前的版本,也就是xls格式的 Excel 文件,可以使用三方库xlrd和xlwt,前者用于读 Excel 文件,后者用于写 Excel 文件。如果使用较新版本的 Excel,即操作xl
CSV 文件介绍CSV(Comma Separated Values)全称逗号分隔值文件是一种简单、通用的文件格式,被广泛的应用于应用程序(数据库、电子表格等)数据的导入和导出以及异构系统之间的数据交换。因为 CSV 是纯文本文件,不管是什么操作系统和编程语言都是可以处理纯文本的,而且很多编程语言中都提供了对读写 CSV 文件的支持,因此 CSV 格式在数据处理和数据科学中被广泛应用。CSV 文件
JSON 概述在 Python 中,我们可以将程序中的数据以 JSON 格式进行保存。JSON 是“JavaScript Object Notation”的缩写,它本来是 JavaScript 语言中创建对象的一种字面量语法,现在已经被广泛的应用于跨语言跨平台的数据交换。使用 JSON 的原因非常简单,因为它结构紧凑而且是纯文本,任何操作系统和编程语言都能处理纯文本,这就是实现跨语言跨平台数据交换
绝对路径绝对路径,换一种说法就是全路径,在 windows 下就是从盘符开始的,比如C:\windows\system32\cmd.exeC 盘再往前已经没有文件夹了,这个路径是从根上出发的,那它就是绝对路径。相对路径相对路径,就不需要从根目录出发了,而是相对于某个文件目录的路径以下面的文件夹目录为例:test_path ├── __init__.py └── mypath ├── __i
实际开发中常常会遇到对数据进行持久化的场景,所谓持久化是指将数据从无法长久保存数据的存储介质(通常是内存)转移到可以长久保存数据的存储介质(通常是硬盘)中。实现数据持久化最直接简单的方式就是通过文件系统将数据保存到文件中。计算机的文件系统是一种存储和组织计算机数据的方法,它使得对数据的访问和查找变得容易,文件系统使用文件和树形目录的抽象逻辑概念代替了硬盘、光盘、闪存等物理设备的数据块概念,用户使用
异常处理异常抛出Python 主动抛出异常,一般使用 raise 语句来抛出一个指定的异常。raise 语法格式如下:raise 异常类型(异常信息)异常类型 是一个 Python 内置的异常类型或自定义的异常类型,用于指定抛出的异常的类型。异常信息 是一个字符串,用于描述异常的详细信息。主动抛出一个异常:x = 10 if x > 5: raise Exception('x 不能大
错误和异常错误错误(Error)是指程序执行过程中发生的问题,例如语法错误(Syntax Error)、类型错误(Type Error)等。错误是由 Python 解释器检测到的,会使程序终止并显示错误信息。print('Hello world # File "<stdin>", line 1 # print('Hello world # ^ # Syn
面向对象编程应用面向对象的三步走方法:定义类创建对象(实例)调用对象的方法)案例 1:工资结算系统要求:某公司有三种类型的员工,分别是部门经理、程序员和销售员。需要设计一个工资结算系统,根据提供的员工信息来计算员工的月薪。其中,部门经理的月薪是固定 15000 元;程序员按工作时间(以小时为单位)支付月薪,每小时 200 元。from abc import ABCMeta, abstractmet
面向对象编程进阶继承面向对象的编程语言支持在已有类的基础上创建新类,从而减少重复代码的编写。提供继承信息的类叫做父类(超类、基类),得到继承信息的类叫做子类(派生类、衍生类)。例如,我们定义一个学生类和一个老师类,我们会发现他们有大量的重复代码,而这些重复代码都是老师和学生作为人的公共属性和行为,所以在这种情况下,我们应该先定义人类,再通过继承,从人类派生出老师类和学生类,代码如下所示:class
面向对象编程面向对象编程:把一组数据和处理数据的方法组成对象,把行为相同的对象归纳为类,通过封装隐藏对象的内部细节,通过继承实现类的特化和泛化,通过多态实现基于对象类型的动态分派。关键词:对象(object)、类(class)、封装(encapsulation)、继承(inheritance)、多态(polymorphism)。在面向对象编程中,类是一个抽象的概念,对象是一个具体的概念。我们把同一
内置模块同内置函数一样,Python 内置了非常多有意义的模块,可以节省我们造轮子的时间,将更多的精力集中在业务编程上。比如说我们需要生成随机数,Python 提供了 random 模块,比如说我们需要生成时间日期,Python 提供了 datetime 模块,下面是一个列表,大致列出了我们常用到的 Python 内置模块,以及他们具体的用途。模块名说明os
什么是模块在 Python 中,模块(Module)是指一个包含 Python 代码的文件,可以包含函数、变量和类(后面我们会学到)等等有组织的内容。一般来说,我们会把描述一个完整功能的代码封装在一起,形成一个模块。模块可以被其他 Python 程序导入和使用,从而实现代码的复用,这就是模块化编程。Python 标准库中已经内置了很多常用的模块,包括数学库、日期和时间库、文件和目录操作库、网络库等
函数装饰器定义一个装饰器函数 execute_time_decorator(),它的作用是在被装饰函数执行前后分别输出时间:import datetime def execute_time_decorator(func): def wrapper(): print("执行开始:", datetime.datetime.now().strftime("%Y-%m-%d %H:
函数的定义和作用在 Python 中可以使用 def 关键字来定义函数,具体语法如下:def 函数名(参数1, 参数2, ...): 函数体 return 返回值和变量一样每个函数也应该有一个漂亮的名字,命名规则跟变量的命名规则是一致的。在函数名后面的圆括号中可以放置传递给函数的参数,而函数执行完成后我们会通过 return 关键字来返回函数
1 创建集合在 Python 中,创建集合可以使用{}字面量语法,{}中需要至少有一个元素,因为没有元素的{}并不是空集合而是一个空字典# 创建集合的字面量语法(重复元素不会出现在集合中) set1 = {1, 2, 3, 3, 3, 2} print(set1) # {1, 2, 3} print(len(set1)) # 3也可以使用内置函数 set
1 遍历元组跟遍历列表的方式几乎一模一样,请参见一下代码方法一(推荐):items = ('Python', 'Java', 'Go', 'Kotlin') for item in items: print(item)方法二:如果需要获取元组中每个元素所在的索引,推荐使用 enumerate 函数遍历列表获取索引:items = ('Python', 'Java',
1 元组定义和使用元组元组(tuple)跟列表非常的类似,元组也是多个元素按照一定的顺序构成的序列。但跟列表最大的区别就是,它是一种不可变的数据类型。这就意味着元组类型的变量一旦定义,其中的元素不能再添加或删除,而且元素的值也不能进行修改。定义元组通常使用()字面量语法。# 定义一个三元组 t1 = (1, 2, 3) # 定义一个四元组 t2 = ('Stan', 28, True, '上海')
遍历列表元素如果想逐个取出列表中的元素,可以使用for循环的,有以下两种做法。方法一(推荐):items = ['Python', 'Java', 'Go', 'Kotlin'] for item in items: print(item)方法二:如果需要获取列表中每个元素所在的索引,推荐使用 enumerate 函数遍历列表获取索引:提示:enumerate 函数接
1 数据结构简介定义和使用列表如果一个学生有多种爱好,比如游泳、健身、跑步等,我们要如何在代码中在描述它呢?在 Python 中,我们可以使用列表来描述它,列表是由一系列元素按特定顺序构成的数据序列,通常使用[]字面量语法来定义列表,列表中的多个元素用逗号进行分隔,并且元素是可以重复的,代码如下所示hobbies = ['swim', 'fitness','running'] # 游泳、健身、跑步
1 分支结构在 Python 中,要构造分支结构可以使用if、elif和 else关键字。if 语句if 语句是最简单的判断,含义为如果表达式成立(真),就执行后面的代码块;如果表达式不成立(假),就什么也不执行。语法格式如下:""" 用户身份验证 """ username = 'admin' if username == 'admin': print('注意,这位是 admin
1 字符串基本概念字符串的定义所谓字符串,就是由零个或多个字符组成的有限序列在 Python 程序中,如果我们把单个或多个字符用单引号或者双引号包围起来,就可以表示一个字符串。字符串中的字符可以是特殊符号、英文字母、中文字符、日文的平假名或片假名、希腊字母、Emoji 字符等。转义字符和原始字符串在字符串中可以使用\(反斜杠)来表示转义,也就是说\后面的字符不再是它原来的意义,例如:\n不是代表反
1 标准输入在 Python 中,我们使用 input() 函数来获取用户键盘输入,代码示例如下:name = input("请输入姓名:") print(name)注意input() 函数的只接收字符串类型的输入2 标准输出print 函数语法进阶name = "Stan" age = 28 print("你好,", "我的名字是", name, ",我今年", a
作为一个普通的程序猿,学习是一件痛苦的事,但是面对未来的不确定性,需要多一些技能来提升自己的价值,在此记录下Python学习过程,加深理解,同时也希望能帮到想学习这门语言的同学,欢迎一起讨论学习
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号