Python练习-常用内建模块collections
本部分学习Python常用内建模块collections。collections模块中提供了很多集合相关的类,如namedtuple、OrderDict、ChainMap以及Count等。便于针对特定使用场景,高效的进行集合操作。 一、namedtuple namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来使用tu...
本部分学习Python常用内建模块collections。collections模块中提供了很多集合相关的类,如namedtuple、OrderDict、ChainMap以及Count等。便于针对特定使用场景,高效的进行集合操作。 一、namedtuple namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来使用tu...
本部分学习Python常用内置模块datetime。通过datetime模块,我们可以很方便的操作日期、时间戳已经时区转换等操作。 构建datetime对象 import re from datetime import datetime, timedelta, timezone now = datetime.now() print(now) print(type(now)) # 注意到...
本部分练习通过Python使用正则表达式。正则表达式是编程里一个很常用,很基础的知识,这里不做赘述。具体规则可以查阅关于正则学习的相关资料。这里重点练习通过Python编程使用正则表达式的方法。 在Python中,通过re模块来使用正则表达式,如: # Python 中正则表达式,强烈建议使用r前缀,避免转义 import re print(re.match(r"\d{4}-\d{8}"...
本部分练习Python分布式任务。在Python的multiprocessing模块中,提供了BaseManager类,可以非常简单快速的创建分布式调度任务。 思想也很简单,服务端开启端口,注册信息传递的队列,接收端链接对应地址和端口,拿到队列,获取其中传递的信息,进行对应处理即可。 如果有结果传回,可以在注册一个队列用于传递结果即可。样例代码如下: 服务端 # 分布实任务样例 imp...
本部门练习Python多线程操作,Python中得多线程虽然为真正得POSIX 多线程,但是由于全局进程锁GIL得存在,在计算密集型业务中,并不能发挥真正并发的作用。 Python中的多线程主要通过threading模块实现,结果操作与Java多线程和Python多进程类似。 # 多线程练习 import threading def thread_run(text): pri...
本部门学习Python多进程编程,若在linux环境下,可以使用fork函数,windows环境下没有该函数,可通过Process模块实现。 # windows没有fork调用,因此无法使用os.fork函数 # 使用multiprocessing模块 def sub_process_runner(name): print("I am a child process name: ...
本部门学习Python的json转换操作。跟之前学的通过bytes的序列化接口非常类似。只是在类转换的时候略有不同。 一、dict对象转换 对于dict对象,可直接进行通过json.dumps/json.dump接口转换字符串或保存到文件中。 d = dict(name='Bob', age=18) print(json.dumps(d)) json_file_path = os.path...
本部分学习Python序列化相关操作。序列化主要是为了将内存中的对象持久化到磁盘(文件)以便于后续从文件中恢复对象。可用于对象持久化和网络传输。 本文主要学习字节流序列化操作。Python中用字节流序列化对象用pickle模块。 一、对象转字节(序列化) 通过pickle.dumps()方法,可以直接生成序列化后的字节流,如: import json import os.path imp...
本部分学习Python的IO操作,包括StringIO、BytesIO以及文件(夹)操作3个部分。 一、StringIO StringIO用于在内存中生成并操作字符串。操作模式和之前练习的文件内存操作类似,是通过IO流的模式进行操作。代码如下: # 1. string io import os from datetime import datetime from io import S...
本部门练习Python文件读写操作。与Java类似,需要注意文件打开后的关闭操作。 # 文件操作 import os # 因为一定要关闭文件流,所以写在finally里 try: file = open('.\\resources\\file_demo') print(file.read()) finally: if file: file.clos...