
Python
文章平均质量分 88
杰克小麻雀
这个作者很懒,什么都没留下…
展开
-
彻底弄懂Python中的 Moneky Patch
Python 中的 moneky patch 是什么意思?原创 2021-08-10 19:30:52 · 2107 阅读 · 0 评论 -
Python 相关文件常见的后缀名详解
常见的 Python 文件后缀有:py、pyc 、pyo、 pyi、pyw、 pyd、 pyx 等。本文只介绍相对常见的一些后缀名,至于一些特别冷门的文件格式,例如一些文章提到的pyz、pywz、rpy、pyde、pyp、 pyt等,并没有进行研究。因为这些扩展名资料很少,网上搜到的文章似乎都是同一个出处,只是简单提了一句,说了等于没说。py最常见的 Python 源代码文件。实际上如果用 python + 文件 的方式运行代码,只要文件内容相同,后缀名是不重要的,也就是说下面的运行结果都是等价.原创 2021-05-02 17:41:34 · 12434 阅读 · 14 评论 -
彻底弄懂Python标准库源码(三)—— pprint模块
pprint模块能够美观地对数据结构进行格式化。不仅可以由解释器正确地解析,而且便于人类阅读。输出尽可能地保持在一行,需要分拆到多行时会有缩进表示。想象一下,你有这么一串 json (这个是我随机生成的)需要打印出来,或者调试程序的时候需要看一下 json 中某个字段的值。用 print() 打印出来回事这么一坨,根本没有可读性:{'_id': '5f8808d57ac946ae591e8929', 'index': 0, 'guid': 'b41b3b14-1ae2-4cc4-b4...原创 2020-12-11 16:23:29 · 1602 阅读 · 1 评论 -
彻底弄懂Python标准库源码(二)—— os模块(续)
本文续彻底弄懂Python标准库源码(一)—— os模块本文所用Python3.8.3 标准库 os.py文件, 可以在CPython官方GitHub地址下载。目录第423~529行 fwalk——目录树生成器第531~654行 exec函数族第657~713行 _Environ——环境变量信息的类第715~721行 os.putenv——设置环境变量第723~729行 os.unsetenv——删除环境变量第731~759行 os.environ——环境变量信息...原创 2020-09-09 16:29:24 · 2535 阅读 · 5 评论 -
彻底弄懂 Python3中入参里的*号的作用
我们在看代码时,除了能看到普通的定义函数的入参写法,比如def func(param1, param2):,可能也会看到入参用 *args, **kwargs 来代替的写法,比如 def func(*args, **kwargs):,此外还有一种写法,比如def func(param1, *,param2):,中间多了一个单纯的星号,这个用法又是什么意思呢?先从Python中的几种传递参数的方式说起。一、Python3中几种传递参数的方式:位置参数、默认参数、可变参数(包括可变位置参数,可变...原创 2020-07-25 20:22:37 · 3234 阅读 · 1 评论 -
彻底弄懂Python标准库源码(一)—— os模块
目录第1~22行 模块整体注释、nt与posix第24~46行 模块引入、_exists方法、_get_exports_list方法第48~97行 根据系统不同导入不同的方法和属性第100~185行 ?[1]第188~193行定义三个枚举变量第195~228行 makedirs——创建多级目录第230~250行 removedirs——删除多级目录第252~278行 renames——重命名目录或文件第280~421行 walk——目录树生成器今天先来看一下平常使用.原创 2020-06-15 01:23:15 · 6307 阅读 · 3 评论 -
彻底弄懂Python标准库源码(零)—— 学习计划
https://www.cnblogs.com/value-code/p/9224820.htmlhttps://www.cnblogs.com/pluse/p/8667864.htmlhttps://www.liwenzhou.com/posts/Python/built-in_functions/https://docs.python.org/zh-cn/3/library/index.htmlhttps://docs.python.org/zh-cn/3/py-modindex.htm原创 2020-05-25 22:21:39 · 2461 阅读 · 1 评论 -
用Python实现一个软件自动升级系统
软件客户端在发布新版本的时候,有时候只修改了几个文件,没必要让用户重新下载整个客户端再重新安装,同时也不应要求用户每次去手动下载更新的文件,再手动覆盖本地文件。这个时候需要设计一个自动升级机制,在某些条件触发时(比如软件启动的时候)自动查看是否有更新,如果有就将改变的内容下载下来,更新本地旧文件,再根据情况判断是否重启客户端。这个功能现在是桌面程序必备的功能,基本所有的客户端都有这个检查更新的功能...原创 2020-04-25 22:26:49 · 15452 阅读 · 20 评论 -
彻底理解Python中的"指针"
目录一、两个Python例子引发的思考二、Python中的不可变对象和可变对象三、C语言中定义变量的过程四、Python中定义对象的过程五、总结参考链接:学过C,C++语言的同学都知道一个重要的概念——指针。Python中有指针的概念吗?我查了许多资料,没人认明确地说Python中有“指针”这一定义。在我看来,Python中虽然没有“指针”的定义,但是却随处可见“指...原创 2019-09-07 22:11:59 · 38707 阅读 · 19 评论 -
彻底弄懂Python中的GIL锁
刚学习python时,我关注了许多介绍python的公众号,也经常会在头条和知乎上收到关于python的文章的推送。在这些文章的评论区中,我经常会看到这样的说法:“Python是垃圾语言,先把GIL解决再说吧”,“又在吹Python,GIL不解决我永远不用Python”。刚开始,我也没去关注。后来Python用的越来越多,我不禁纳闷儿,我没感觉到GIL锁在使用python过程中有什么影响啊,事实上...原创 2019-08-04 15:41:20 · 1987 阅读 · 0 评论 -
彻底弄懂python3中的回调函数
百度百科说:回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。...原创 2019-03-01 11:15:59 · 26486 阅读 · 5 评论 -
python3 线程池实现批量ping某一网段,获得可用ip列表——futures模块
import threadingimport subprocessimport timefrom concurrent.futures import ThreadPoolExecutor, wait, ALL_COMPLETED# 定义一个执行 ping 的函数def ping_ip(ip): res = subprocess.call('ping -n 2 -w 5 %s'...原创 2018-12-25 17:43:32 · 2329 阅读 · 0 评论