编程语言 Python函数参数的五种形式 二. 函数参数组合使用,以上5中参数都可以随意组合,但是参数定义的顺序必须是:位置参数、默认参数、可变参数、命名关键字参数和关键字参数。注意: 参数的组合使用不建议太复杂,太复杂的话可读性很差。三. 函数参数类型检查,函数的参数可以使用 isinstance() 内置函数来检查。 yuziyue 8 Jul 2023 · 4 min read
编程语言 Python删除字符串中非法字符 有时需要对输入的字符串进行处理,最基本的就是去除非法字符,在Python中可以用如下方法简单实现。第一个参数表示被替换的字符 第二个参数表示用来替换的字符(第二个参数和第一个参数必须个数相同、一一对应) 第三个参数的字符串会被替换成空字符 yuziyue 7 Jul 2023 · 1 min read
编程语言 Python异步非阻塞多种实现方式 Python 回调函数,回调函数的原大概就是下面代码的样子,deal_with 函数是真正执行计算的函数,计算后需要通知调用者计算结果,通过传入的get_result 函数处理计算结果。Tornado 异步非阻塞,同步函数 from tornado.httpclient import HTTPClient yuziyue 7 Jul 2023 · 1 min read
编程语言 深入浅出 Python 异步并发原理 由于线程的线程的数据结构比进程更轻量级,并且同一个进程可以容纳多个线程,所以可以使用多线程解决并发问题。多线程也是有问题的,因为多线程有一个GIL锁:同一时刻一个进程中只有一个进程在运行,并且在线程切换时还资源消耗大,而协程的切换则是在线程内部,所以协程优于线程。 yuziyue 7 Jul 2023 · 13 min read
编程语言 Python 脚本实现 Menu 菜单 在操作系统上执行某些脚本时,会有一些 menu 选择菜单, 如果用 Python 来实现,可以尝试用下面的思路试试,毕竟Python的可读性比bash高的可不是一点点。 yuziyue 6 Jul 2023 · 1 min read
编程语言 Python生成素数算法 埃氏筛法(1)先把1删除(现今数学界1既不是质数也不是合数)(2)读取队列中当前最小的数2,然后把2的倍数删去(3)读取队列中当前最小的数3,然后把3的倍数删去(4)读取队列中当前最小的数5,然后把5的倍数删去(5)如上所述直到需求的范围内所有的数均删除或读取 yuziyue 6 Jul 2023 · 1 min read
编程语言 Python单例模式的六种实现 什么叫做单例模式,单例模式是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在,第一次创建实例时是真正的创建了一个实例,而后面创建的实例则是第一次创建的实例的一个引用,是同一个实例。单例模式多种实现,全局变量方式实现 class Singleton: yuziyue 6 Jul 2023 · 2 min read
编程语言 Python生成器 迭代器 可迭代对象 生成器是一种特殊的迭代器,它的返回值不是通过return, 而是用yield,生成器算得上是Python语言中最吸引人的特性之一,是一种特殊的迭代器,不过这种迭代器更加优雅。它不需要再像上面的类一样写__iter__()和__next__()方法了,只需要一个yiled关键字。生成器一定是迭代器, 反之不成立.,生成器有两种实现方法:生成器表达式、生成器函数 yuziyue 6 Jul 2023 · 2 min read
编程语言 Python函数 map() reduce() filter() zip() sort() sorted() map() 函数,将函数作用到序列的每个元素上,可以用列表生成式来实现同样的效果,map()是对列表的每一个元素做相同的操作,reduce() 函数把一个函数作用在一个序列[x1, x2, x3, x4]上, 这个函数必须接收两个参数,reduce() 把结果继续和序列的下一个元素做累积计算, Python3 中,reduce()函数已经被从全局函数中移除了,被放置在fucntools模块里 yuziyue 5 Jul 2023 · 4 min read
编程语言 Python面向对象从入门到精通 面向对象中的类和实例,类 是众多具有相似属性实例的一种抽象,比如老师、学生这是两个类,类是指抽象出的模板。实例 是类的一个个具体体现,比如我们学校有郑老师、张老师, 有小张同学、小余同学,实例是根据类创建出来的具体的对象。每个对象都拥有从类中继承的相同的方法,但各自的数据互相独立,互不影响。 yuziyue 5 Jul 2023 · 22 min read
编程语言 深入浅出 Python 装饰器精通 什么是装饰器:装饰器,顾名思义就是用来做装饰用的,Python中装饰器用来装饰函数,它的好处是不需要对原来的函数做任何修改就可以对函数进行装饰。装饰器的实现:现在要获取函数 a() 的运行时间,可以编写一个装饰器来装饰,下面分三个步骤,一步一步引出装饰器的语法糖 @ 。 yuziyue 5 Jul 2023 · 8 min read
编程语言 Python超时装饰器实现 实现代码 task 任务运行 10 秒钟后停止 @stopit.threading_timeoutable() def worker(name): try: task(name) except stopit.utils.TimeoutException: print('timeout!!!') yuziyue 4 Jul 2023 · 1 min read
编程语言 使用Python安全地修改文件内容 实现思路:同时打开两个文件,将第一个文件的内容读出来进行修改,然后将修改后的行写入第二个文件中。写完后删除原始文件,将第二个文件重命名为原始文件名。操作过程中出现任何错误都会终止修改,对原始文件没有任何影响。 yuziyue 4 Jul 2023 · 1 min read
编程语言 Python正则表达式 以上的匹配都是单行匹配,如果要匹配的字符串是多行,就需要使用多行模式来匹配。 比如当用点(.)匹配任意字符的时候,忘记了点(.)不能匹配换行符。 比如,匹配C语言分割的注释,搜索替换, 返回替换后的字符串,同时返回替换的次数。re.subn(pattern, repl, string[, count]) yuziyue 4 Jul 2023 · 5 min read