随笔分类 - Python内置库
Python内置库学习笔记
摘要:官方文档: pathlib — Object-oriented filesystem paths 一、基础使用 遍历子目录 使用通配符遍历文件 拼接路径 获取标准化后的绝对路径 查询路径常规属性 打开文件 from pathlib import Path print('1.1 查询指定目录的子目录'
阅读全文
摘要:getpass模块提供了两个函数getpass和getuser,隐式密码输入和获取当前用户,当你想要用户输入密码,基于安全考虑,密码又不能明文显示出来的时候就可以使用这个模块。 官方文档: getpass — Portable password input getpass(prompt='Passw
阅读全文
摘要:1. 为什么需要使用mock unittest.mock是用于在单元测试中模拟和替换指定的对象及行为,以便测试用例更加准确地进行测试运行。例如对于以下代码,想要针对函数func_a写一个简单的单元测试: import unittest def func_c(arg1, arg2): a_dict =
阅读全文
摘要:一、WSGI简介 WSGI(Web Server Gateway Interface,web服务器网关接口)主要规定了服务器端和应用程序之间的接口,即规定了请求的URL到后台处理函数之间的映射该如何实现。wsgiref是一个帮助开发者开发测试的Python内置库,程序员可以通过这个库了解WSGI的基
阅读全文
摘要:array模块提供了一种数组概念上的紧凑类型的实现,数组中的元素必须为同一类型,且为基础数据类型(字符、整数或浮点数),这些元素在内存中是按固定大小(字节)连续存储的,相比于列表和元组类型,array模块的实现更加节省内存。但是注意,使用的时候还是需要根据实际情况来看,因为Python对于数字、字符
阅读全文
摘要:Python进行异步执行的库有threading(多线程)和multiprocessing(多进程),这两个库为程序提供了丰富的异步操作,但是如果只是进行一些简单的异步执行,并不需要用到多复杂的场景,可以考虑使用concurrent.confutures。它提供一些简单常用的异步执行操作,比如sub
阅读全文
摘要:Python的多进程因为可以充分利用CPU多核的特点,所以通常用于计算密集型的场景或者需要大量数据操作的场景,而对于多线程,在某些语言中因为可以充分利用CPU,所以可能多线程的场景使用得多一点,但是在Python中,多线程只能在CPU的单核中运行,不能充分利用CPU多核的特点,所以Python多线程
阅读全文
摘要:Python的线程操作在旧版本中使用的是thread模块,在Python27和Python3中引入了threading模块,同时thread模块在Python3中改名为_thread模块,threading模块相较于thread模块,对于线程的操作更加的丰富,而且threading模块本身也是相当于
阅读全文
摘要:在平时的开发中感觉INI格式的配置文件使用还是挺需要的,有时会使用一个单独的py来存放一些常量或者配置项,大多时候这样倒是挺好用的,但是如果某些配置项需要在运行时由用户来修改指定,比如很多app在关闭时会有一个弹出框提示“是否关闭”和“下次不再提醒”,这种配置项如果使用INI格式的配置文件来操作的话
阅读全文
摘要:在一个软件中,日志是可以说必不可少的一个组成部分,通常会在定位客户问题或者记录软件使用情况等场景中会用到。logging模板块是Python的一个内置标准库,用于实现对日志的控制输出,对于平常的日志输出,甚至是系统级的日志输出,也都可以使用logging模块来进行实现。 一、使用basicConfi
阅读全文
摘要:对于数据库的操作,Python中可以通过下载一些对应的三方插件和对应的数据库来实现数据库的操作,但是这样不免使得Python程序变得更加复杂了。如果只是想要使用数据库,又不想下载一些不必要的插件和辅助软件,可以使用Python内置模块sqlite3。 sqlite3是Python对于sqlite数据
阅读全文
摘要:Python中的json模块和pickle都是用于数据的序列化和反序列化,它们提供的方法也是一样的:dumps,dump,loads,load dumps(obj):将对象序列化为str。 dump(obj, fp):将对象序列化为str,并存入文件中。 loads(s):将(序列化后的)字符串反序
阅读全文
摘要:math模块 math模块用于数学意义上的一些计算,常用的方法有: math.pi:PI的值(3.141592653589793)。 math.floor(x):返回一个小于等于x的最大整数(浮点类型),x可以是整数,也可以是小数,比如math.floor(1.001)返回1.0。 math.cei
阅读全文
摘要:os模块 os.path.driname(path):返回当前路径的上一级路径字符串。 os.path.basename(path):返回当前路径的目录名(文件夹名)或文件名(全称)。 os.path.split(path):返回一个路径以最后一个路径分割符分割后的元组。 os.path.split
阅读全文
摘要:time模块 time模块通常用来操作时间戳信息(各种“秒”),常用的方法有: time.sleep(seconds):将当前程序阻塞指定秒数,然后继续运行程序。 time.time():返回当前时间的时间戳,即1970年到现在经过的浮点秒数。 time.struct_time:struct_tim
阅读全文
摘要:1、正则表达式是用于处理字符串的功能强大的工具,但它并不是Python所独有的,许多编程语言都支持正则表达式,用法也都区别不大; 2、Python中正则表达式的应用在re模块中,re模块中的方法使用正则表达式来匹配字符串; 3、Python中的数量词默认是贪婪的,总是尝试匹配尽可能多的字符;非贪婪的
阅读全文