- 博客(158)
- 收藏
- 关注
原创 Python 之 random 模块的基本使用(44)
random模块主要用于生成伪随机数。需要注意的是,这里生成的随机数是伪随机数,并非真正意义上的随机数。伪随机数是通过特定的算法计算得出的,在给定相同的初始条件下,算法会生成相同的随机数序列。不过,在大多数应用场景中,伪随机数已经能够满足需求。Python 的random模块为我们提供了丰富的随机数生成和处理功能。通过randint()等函数可以生成随机整数,random()uniform()函数可以生成随机浮点数,choice()choices()sample()函数可以从序列中随机选择元素,
2025-06-20 02:00:00
1312
原创 Python 之 time 与 datetime 模块的基本使用(43)
time模块是 Python 标准库中的一个基础模块,它提供了与时间相关的各种函数和常量。这些功能可以帮助我们完成诸如获取当前时间、测量时间间隔、暂停程序执行等任务。time模块主要基于 Unix 时间戳,即从 1970 年 1 月 1 日 00:00:00 UTC 到指定时间的秒数。datetime模块是 Python 标准库中用于处理日期和时间的高级模块。它提供了多个类,如datetimedatetime和timedelta,用于表示日期、时间、时间间隔等。与time模块相比,datetime。
2025-06-19 11:00:00
607
原创 Python Pickle 模块的基本使用(42)
pickle是 Python 标准库中的一个模块,其主要功能是实现 Python 对象的序列化和反序列化。序列化指的是把 Python 对象转换为字节流的过程,而反序列化则是将字节流还原为 Python 对象的过程。借助pickle模块,我们能够把复杂的 Python 对象(像列表、字典、类实例等)保存到文件或者在网络中传输。pickle也能处理自定义类的实例,但需要确保类的定义在反序列化时是可用的。# 定义一个自定义类self.name = name # 初始化姓名属性。
2025-06-19 07:00:00
980
原创 Python JSON 模块的基本使用(41)
JSON 是一种基于文本的数据交换格式,它以键值对的形式组织数据,并且支持数组、对象等数据结构。对象:由花括号{}包围,包含零个或多个键值对,键和值之间用冒号分隔,键值对之间用逗号分隔。。数组:由方括号[]包围,包含零个或多个值,值之间用逗号分隔。[1, 2, 3]。值:可以是字符串(用双引号包围)、数字、布尔值(true或false)、null、对象或数组。# 定义一个自定义的 JSON 编码器类# 如果对象是 datetime 类型,将其转换为字符串# 定义一个自定义的 JSON 解码器函数。
2025-06-18 09:00:00
1821
原创 Python 包的基本使用(40)
包是 Python 中用于组织模块的一种方式,它实际上是一个包含多个模块的目录。为了让 Python 识别一个目录为包,该目录下必须包含一个特殊的文件(在 Python 3.3 及以后的版本中,文件不是必需的,但为了兼容性,建议保留)。包可以包含子包和模块,形成一个层次化的结构。__all__Python 包是一种非常有用的代码组织方式,它可以帮助我们将相关的模块组织在一起,提高代码的可读性和可维护性。通过创建包和子包,可以形成层次化的代码结构,使代码更加清晰。
2025-06-18 06:45:00
730
原创 Python 二分法的基本使用(39)
二分法,也被称作折半查找法,是一种针对有序数据集合的搜索算法。其核心原理在于,每次将搜索范围缩小一半,通过比较目标值与中间元素的大小,来确定目标值可能存在的区间,持续重复这个过程,直至找到目标值或者确定目标值不存在。确定搜索区间的上下界,通常初始时下界为 0,上界为数据集合的长度减 1。计算搜索区间的中间位置。将中间位置的元素与目标值进行比较:若中间元素等于目标值,则搜索成功,返回中间位置。若中间元素大于目标值,说明目标值在左半区间,更新上界为中间位置减 1。
2025-06-17 12:00:00
722
原创 Python 函数递归与调用的深度剖析(38)
在 Python 编程里,函数递归与调用是极为关键的概念。函数调用让代码模块化,增强了代码的复用性和可维护性;递归则是一种独特的编程技巧,借助函数自身调用自身来解决复杂问题。这两者在算法设计、数据结构处理等诸多领域都发挥着重要作用。本文会深入探讨 Python 中函数递归与调用的基本使用,通过大量源码示例与详细注释,助你掌握其原理和应用。
2025-06-17 08:00:00
613
原创 Python logging 模块基本使用(37)
在 Python 编程中,日志记录是一项至关重要的功能。无论是开发小型脚本还是大型项目,都需要一种有效的方式来记录程序运行时的信息,比如错误、警告、调试信息等。这些日志信息不仅有助于在程序出现问题时进行调试和排查,还能在程序正常运行时监控程序的状态和性能。Python 的 `logging` 模块提供了一个灵活且强大的日志记录工具,它允许开发者对日志的输出格式、级别、目标位置等进行细致的控制。本文将深入介绍 `logging` 模块的基本使用,通过大量的源码示例和详细的注释,帮助你全面掌握该模块的使用方法。
2025-06-16 13:00:00
842
原创 Python 面向过程编程思想与匿名函数及其应用(36)
面向过程编程(Procedural Programming)是一种以过程为中心的编程范式。它将程序看作是一系列的步骤或过程,每个过程完成特定的任务。程序的执行流程是按照这些过程的顺序依次进行的。在面向过程编程中,数据和操作数据的函数是分离的。匿名函数,也称为 lambda 函数,是一种没有名字的小型函数。它通常用于编写简单的、一次性的函数。
2025-06-16 08:45:00
845
原创 Python 模块的基本使用(35)
在 Python 中,一个模块就是一个包含 Python 代码的文件,其文件扩展名通常为.py。这个文件可以包含函数、类、变量以及可执行的代码等。例如,我们创建一个名为的文件,在其中定义一些与数学计算相关的函数,那么这个文件就是一个模块。包是一种组织 Python 模块的方式,它实际上是一个包含多个模块的目录。为了让 Python 识别一个目录为包,该目录下必须包含一个名为的文件(在 Python 3.3 及以后的版本中,文件不是必需的,但为了兼容性,建议保留)。
2025-06-15 00:30:00
459
原创 Python 内置函数的全面解析与实战应用(34)
Python 的内置函数是 Python 语言的重要组成部分,它们提供了丰富的功能,涵盖了数据类型转换、数学计算、序列操作、字符串处理、文件操作等多个方面。通过使用这些内置函数,开发者可以更加高效地编写代码,减少重复劳动。同时,内置函数的使用也使得代码更加简洁、易读和可维护。例如,在数据处理中,max()min()和sum()函数可以方便地进行数值统计;在文件操作中,open()函数和文件对象的方法可以实现文件的读写操作。
2025-06-15 00:15:00
866
原创 Python 三元表达式、生成式与生成器表达式的深度剖析(33)
Python 的三元表达式、生成式和生成器表达式是非常实用的语法特性,它们可以让代码更加简洁、高效。三元表达式可以简化条件判断,使代码更加易读;生成式可以快速创建列表、集合和字典,提高代码的编写效率;生成器表达式则在处理大规模数据时具有显著的内存优势,避免了一次性加载大量数据到内存中。通过综合应用这三种语法特性,可以让 Python 代码更加灵活、强大。
2025-06-14 09:00:00
730
原创 Python 生成器:深入理解与高效运用(32)
生成器是 Python 中一种特殊的迭代器,它允许你在需要时逐个生成值,而不是一次性生成所有值。这使得生成器在处理大规模数据时具有显著的内存优势。生成器主要有两种创建方式:生成器函数和生成器表达式。Python 生成器是一种强大且灵活的工具,它为我们处理数据提供了一种更加高效、简洁的方式。生成器通过yield语句实现了惰性求值,允许我们在需要时逐个生成值,从而节省了内存并提高了程序的性能。生成器可以通过生成器函数和生成器表达式两种方式创建,并且支持send()throw()和close()等高级方法。
2025-06-14 07:00:00
726
原创 Python迭代器的基本使用与原理剖析(31)
迭代(Iteration)是指重复执行一系列操作,每次操作都基于上一次的结果。在Python中,迭代通常用于遍历容器(如列表、字典、集合等)中的元素。例如,使用for# 定义一个列表# 使用for循环遍历列表,item依次代表列表中的每个元素在这个过程中,for循环会自动调用迭代器来逐个访问列表中的元素。迭代器是实现了__iter__()和__next__()方法的对象。__iter__()方法返回迭代器对象本身,而__next__()方法用于返回容器中的下一个元素。当没有更多元素时,
2025-06-13 10:00:00
799
原创 Python 装饰器:代码功能的优雅增强(29)
装饰器(Decorator)本质上是一个函数,它接受一个函数作为参数,并返回一个新的函数。新的函数通常会在原函数的基础上添加一些额外的功能,同时保持原函数的调用方式不变。Python 装饰器是一个强大而灵活的特性,它允许我们在不修改原函数代码的前提下,为函数添加额外的功能。通过本文的介绍,我们深入了解了装饰器的基本概念、工作原理、不同类型的装饰器以及它们的应用场景。装饰器在日志记录、性能测试、权限验证、缓存机制、重试机制等方面都有广泛的应用,可以帮助我们编写出更加简洁、高效、可维护的代码。
2025-06-13 07:00:00
646
原创 Python 闭包函数:原理、应用与深度解析(28)
闭包函数是指有权访问另一个函数作用域中变量的函数。简单来说,当一个内部函数引用了外部函数的变量时,就形成了一个闭包。闭包函数可以记住并访问其外部函数的作用域,即使外部函数已经执行完毕。# 定义外部函数 outer# 在外部函数中定义一个变量 x,并赋值为 10x = 10# 定义内部函数 inner# 内部函数引用了外部函数的变量 xreturn x# 外部函数返回内部函数 inner# 调用外部函数 outer,得到内部函数 inner,并将其赋值给变量 closure。
2025-06-12 09:00:00
1683
原创 Python 名称空间与作用域深度剖析(27)
名称空间是 Python 中一个非常重要的概念,它可以被看作是一个字典,其中键是名称(变量名、函数名等),值是对象(变量的值、函数对象等)。名称空间为 Python 中的名称提供了一个隔离的环境,不同名称空间中的名称可以相同而不会产生冲突。# 示例代码,展示名称空间的基本概念# 定义一个全局变量# 定义一个局部变量print("局部变量的值:", local_variable)# 调用函数print("全局变量的值:", global_variable)在上述代码中,全局名称空间包含了和,而在。
2025-06-12 07:00:00
751
原创 Python之函数对象+函数嵌套(26)
函数嵌套是指在一个函数内部定义另一个函数。内部函数只能在外部函数内部被调用,其作用域也仅限于外部函数内部。# 定义外部函数print("进入外部函数")# 在外部函数内部定义内部函数print("进入内部函数")# 在外部函数内部调用内部函数print("退出外部函数")# 调用外部函数在这段代码中,在内部被定义,只有在执行过程中,才能调用。当调用时,会先输出“进入外部函数”,然后调用内部函数,输出“进入内部函数”,最后输出“退出外部函数”。
2025-06-11 09:00:00
896
原创 Python 之函数的参数(25)
定义一个函数,包含两个位置参数 x 和 y# 函数体,计算两个参数的和# 调用函数,传递两个实参 3 和 5# 打印计算结果在上述代码中,add函数定义了两个位置参数x和y。当调用add(3, 5)时,实参3被传递给形参x,实参5被传递给形参y,函数内部计算x + y的结果并返回。# 定义一个函数,包含一个默认参数 greeting# 函数体,打印问候语print(f"
2025-06-11 07:00:00
892
原创 Python 之函数 Type - hinting(24)
类型别名允许为复杂的类型定义一个简单的名称,提高代码的可读性和可维护性。可以使用typing模块中的TypeAlias(Python 3.10 及以上)或者直接赋值的方式来定义类型别名。# 定义一个类型别名,将包含字符串的列表类型命名为 StringList# 定义一个函数,参数 names 被指定为 StringList 类型,返回值被指定为字符串类型# 函数体,将列表中的字符串用逗号连接起来# 调用函数,传入符合类型提示的参数在上述代码中,StringList。
2025-06-10 08:00:00
827
原创 Python函数的基本使用(23)
在Python中,使用def# 使用def关键字定义一个函数,函数名为hello_world# 函数体,用于输出问候语")在上述代码中,def后面跟着函数名,函数名遵循Python的命名规则,通常使用小写字母和下划线组合。函数名后面是一对圆括号(),圆括号内可以定义函数的参数(这里暂时为空),最后是一个冒号,冒号后面缩进的代码块就是函数体。在一个函数内部可以定义另一个函数,内部函数只能在外部函数内部被调用。# 定义外部函数print("进入外部函数")# 在外部函数内部定义内部函数。
2025-06-10 07:00:00
706
原创 Python 文件操作之修改(22)
Python 文件操作中的修改操作可以通过多种方式实现。读取 - 修改 - 覆盖方式简单直接,但对于大文件可能会占用过多内存;逐行读取 - 修改 - 写入新文件方式相对灵活,适合处理各种规模的文件;使用fileinput模块则提供了一种更便捷的直接修改文件的方法,并且会自动处理备份和替换。
2025-06-09 09:00:00
523
原创 Python 文件处理(21)
Python 提供了丰富且便捷的文件处理方法,通过open()函数可以灵活地打开文件,使用不同的模式进行读取和写入操作。with语句能确保文件在使用完毕后自动关闭,避免资源泄漏。掌握这些方法,能让我们轻松实现文件的读写和修改等功能。
2025-06-09 07:00:00
759
原创 Python 之文件处理编码字符(20)
在 Python 文件处理中,正确处理字符编码是非常重要的。通过open()函数的encoding参数可以指定文件的编码方式,确保文件的读写操作能够正确处理不同编码的文本。同时,字符串和字节对象之间的编码和解码操作也是处理字符编码的关键。
2025-06-08 08:00:00
824
原创 Python 之集合类型内置方法(19)
Python 集合类型的内置方法为开发者提供了丰富的功能,涵盖了元素的添加、删除、集合运算等多个方面。通过合理运用这些方法,能够高效地处理集合数据,完成如数据去重、集合运算等任务。
2025-06-08 07:00:00
700
原创 Python 之字典类型内置方法(18)
Python 字典的内置方法为我们提供了丰富的功能,涵盖了数据的获取、删除、遍历、更新等多个方面。get()和方法让我们可以安全地获取和设置键 - 值对;pop()和popitem()方法用于删除键 - 值对;keys()values()和items()方法方便我们遍历字典;update()方法可用于字典的更新和合并。熟练掌握这些方法,能让我们更高效地处理字典数据。
2025-06-07 08:00:00
909
原创 Python 之元组类型内置方法(17)
Python 元组的内置方法虽然不多,但count()和index()方法在特定场景下非常有用。count()方法可以帮助我们统计元素出现的次数,而index()方法可以帮助我们查找元素的位置。元组的不可变性使得它在需要保证数据安全性和稳定性的场景中具有优势。
2025-06-07 07:00:00
255
原创 Python 之列表类型内置方法(16)
Python 列表的内置方法为开发者提供了丰富的功能,涵盖了元素的添加、删除、查找、排序等多个方面。通过合理运用这些方法,能够高效地处理列表数据,提升代码的可读性和可维护性。
2025-06-06 08:00:00
616
原创 Python 之字符串类型内置方法(15)
Python 字符串类型的内置方法为我们处理字符串提供了强大的工具。通过使用这些方法,我们可以方便地进行字符串的查找、替换、分割、连接、大小写转换以及去除空白字符等操作。熟练掌握这些方法可以提高我们的编程效率,使代码更加简洁和易读。
2025-06-06 07:00:00
397
原创 Python 之数字类型内置方法(14)
Python 的数字类型(整数、浮点数、复数)提供了丰富的内置方法,这些方法能实现各种功能,像位数计算、字节转换、比值获取、十六进制转换以及复数操作等。熟练运用这些内置方法,能让开发者在处理数字相关任务时更加高效便捷。
2025-06-05 08:00:00
728
原创 Python 格式化字符串的 4 种方式(13)
格式化是最古老的方式,语法简单,但不够灵活。方法提供了更多的灵活性,支持索引、关键字参数等,但代码相对冗长。f-string 是最简洁和直观的方式,支持直接嵌入变量和表达式,代码可读性高,但要求 Python 版本在 3.6 及以上。模板字符串提供了一种安全的格式化方式,适用于需要从用户输入中获取数据进行格式化的场景。
2025-06-05 07:00:00
850
原创 Python 小数据池与代码块深入剖析(12)
代码块是 Python 程序中一个独立的执行单元,例如一个模块、一个函数体、一个类定义、一个脚本文件等都可以看作是一个代码块。Python 解释器会对每个代码块进行独立的编译和执行。Python 的小数据池和代码块机制是为了优化内存使用和提高代码执行效率而设计的。小数据池对常用的不可变对象进行缓存,避免了重复创建相同对象的开销;代码块则在同一执行单元内对不可变对象进行驻留,进一步提高了内存利用率。理解这些机制有助于我们编写更高效、更稳定的 Python 代码。
2025-06-04 08:00:00
589
原创 Python 之深浅 Copy(11)
浅复制创建一个新对象,新对象里包含的元素是原对象元素的引用。对于不可变对象,新对象和原对象引用的是同一内存地址;对于可变对象,新对象和原对象中的可变对象也指向同一内存地址。深复制会递归地复制原对象及其所有嵌套的对象,创建一个完全独立的新对象。新对象和原对象在内存中是完全分离的,对新对象的任何修改都不会影响原对象,反之亦然。Python 中的浅复制和深复制是两种不同的数据复制方式。浅复制只复制对象的顶层结构,对于嵌套的可变对象,新对象和原对象共享引用;深复制则递归地复制所有嵌套对象,创建完全独立的新对象。
2025-06-04 07:00:00
406
原创 Python 数据类型之可变与不可变类型详解(10)
不可变类型:包括数字、字符串和元组。这些类型的对象一旦创建,其值不能被修改,任何看似修改的操作实际上都是创建新对象。不可变类型在多线程环境下更安全,也适合用作字典的键。可变类型:包括列表、字典和集合。可变类型可以动态地添加、删除和修改元素,在数据频繁变动的场景下使用更加灵活。理解可变与不可变类型的特性,对于正确处理数据传递、避免意外的数据修改以及优化内存使用都具有重要意义。
2025-06-03 08:00:00
687
原创 Python 流程控制之 for 循环(9)
在 Python 编程中,流程控制是实现复杂逻辑的关键,而 `for` 循环是其中极为重要的一种工具。`for` 循环能够让我们方便地遍历可迭代对象(如列表、元组、字符串等)中的每一个元素,从而对每个元素执行特定的操作。无论是数据处理、文本分析还是游戏开发等领域,`for` 循环都有着广泛的应用。本文将详细介绍 Python 中 `for` 循环的使用方法、原理以及常见的应用场景。
2025-06-03 07:00:00
948
原创 Python 流程控制之 while 循环(8)
Python 中的while循环是一种强大的流程控制结构,它允许程序在满足特定条件的情况下,重复执行一段代码块。通过合理使用while循环,我们可以实现计数循环、用户输入验证、模拟游戏循环等多种功能。同时,break和continue语句可以让我们在循环体中灵活控制循环的执行流程,else子句则为循环正常结束时提供了额外的执行代码的机会。
2025-05-31 10:00:00
620
原创 Python 语法入门之流程控制 if 判断(7)
Python 中的if判断语句为程序提供了强大的流程控制能力。简单的if语句可以根据单个条件执行相应的代码块;if - else语句可以根据条件的真假分别执行不同的代码块;语句则适用于多个条件的判断;嵌套的if语句可以处理更复杂的条件逻辑;而条件表达式则提供了一种简洁的if - else语句的写法。通过合理运用这些if判断语句,我们可以让程序根据不同的情况做出灵活的决策。
2025-05-31 08:00:00
557
原创 Python 入门之基本运算符(6)
Python 中的基本运算符是编程的基础工具,算术运算符让我们能进行数学计算和字符串操作,比较运算符可用于条件判断,逻辑运算符能组合多个条件,赋值运算符方便我们管理变量的值。掌握这些基本运算符,能帮助我们编写简单的程序,实现各种基本功能。
2025-05-30 11:00:00
338
原创 Python 用户交互与格式化输出(5)
Python 中的用户交互和格式化输出是实现程序与用户有效沟通的重要手段。input()函数方便我们获取用户输入,通过类型转换和错误处理可以确保输入数据的有效性。而在格式化输出方面,从旧式的格式化,到新式的方法,再到简洁的 f - 字符串,为我们提供了多种选择,能够根据不同的场景和需求,以美观、易读的方式展示信息。
2025-05-30 08:00:00
297
原创 Python 语法入门之基本数据类型(4)
字符串是由一系列字符组成的序列,可以使用单引号、双引号或三引号来定义。# 使用单引号定义字符串' # 将单引号包裹的字符串赋值给变量 single_quoted_strprint(single_quoted_str) # 输出变量 single_quoted_str 的值# 使用双引号定义字符串double_quoted_str = "Python is great" # 将双引号包裹的字符串赋值给变量 double_quoted_str。
2025-05-29 10:00:00
381
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人