- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 Python中垃圾回收机制
垃圾回收 引用计数:是一种垃圾收集机制,而且也是一种最直观、最简单的垃圾收集技术。当Python的某个对象的引用计数降为0时,说明没有任何引用指向该对象,该对象就成为要被回收的垃圾了。不过如果出现循环引用的话,引用计数机制就不再起有效的作用了。 标记清除:如果两个对象的引用计数都为1,但是仅仅存在他们之间的循环引用,那么这两个对象都是需要被回收的,也就是说,它们的引用计数虽然表现非为0,但实际上...
2020-03-25 13:59:39
269
原创 手写一个使用装饰器实现的单例模式
比较简单易懂的一个方法: def My_decorate(f): def fn(*args, **kwargs): print('decorate called') return f(*args, **kwargs) return fn @My_decorate def fx(): print('fx called') fx() ...
2020-03-24 18:16:35
607
1
原创 Python3.x版本编码和解码:
import json a = '帅哥' print(type(a)) # <class 'str'> 字符串默认编码utf-8,字符类型为str,存储类型为unicode数据 print(json.dumps(a)) # "\u5e05\u54e5" b = a.encode() # 默认为utf-8,将字符串a编码为b,字符类型为bytes,存储类型为字节类型 print...
2020-03-21 14:19:36
829
1
原创 Python笔试题之蛇形矩阵:
输入一个正整数N(N不大于100),输出一个n行的蛇形矩阵。 示例输入: 5 示例输出: 1 3 6 10 15 2 5 9 14 4 8 13 7 12 11 解法一: while True: try: N = int(input()) tmp_begin = 1 # 第一行的数 for i in range(1, N+1): ...
2020-03-21 13:58:24
2158
1
原创 Python经常遇到的笔试题之三天打鱼两天晒网:
问题概述:中国有句俗语叫“三天打鱼两天晒网”某人从1990年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是“打鱼”还是“晒网”。 整体思路如下: 1.计算从1990日开始至指定日期共有多少天; 2.由于“打鱼”和“晒网”的周期为5天,所以将计算出的天数用5取除; 3.根据余数判断他是在“打鱼”还是在“晒网”;若余数为1,2,3,则他是在“打鱼”;否则是在“晒网” 第一步: 首先,我...
2020-03-20 15:36:13
3427
1
原创 面试常遇到:手写邮箱正则表达式
只允许英文字母、数字、下划线、英文句号、以及中划线组成 举例:mengjunjie-001@gmail.com 1.分析邮件名称部分: 26个大小写英文字母表示为a-zA-Z 数字表示为0-9 下划线表示为_ 中划线表示为- 由于名称是由若干个字母、数字、下划线和中划线组成,所以需要用到+表示多次出现 根据以上条件得出邮件名称表达式:[a-zA-Z0-9_-]+ 2.分析域名部分: 一般域名的规...
2020-03-19 17:11:26
753
转载 Python中__new__与 __init__的区别
1.首先用法不同 new()用于创建实例,所以该方法是在实例创建之前被调用,它是类级别的方法,是个静态方法; init() 用于初始化实例,所以该方法是在实例对象创建后被调用,它是实例级别的方法,用于设置对象属性的一些初始值。 由此可知,new()在__init__() 之前被调用。如果__new__() 创建的是当前类的实例,会自动调用__init__()函数,通过return调用的__new_...
2020-03-19 16:21:52
550
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人