Flask脚本服务搭建、基于上下文环境的处理、Python从列表中随机抽取若干元素、Python中format格式化输出、Python多进程
学习日记 2019/5/29
Flask脚本服务搭建
flasky.py
1 | import os |
运行文件
python flasky.py
1 | (microvenv) [root@iz2ze8rern8nx1sglo8ub1z microblog]# python flasky.py |
python flasky.py test
1 | (microvenv) [root@iz2ze8rern8nx1sglo8ub1z microblog]# python flasky.py test |
基于上下文环境的处理
在 create_app内做Flask相关的初始化,将这部分资源处理置于独立的模块中, 使用的时候直接引入, 在模块第一次引入的时候就完成了资源的连接处理, 但总有一些还是需要运行前要执行的内容, 比如应用参数设置。
1 | def create_app(config_name): |
Python从列表中随机抽取若干元素
1 | import random |
Python中format格式化输出
通过key名填充字符
1 | print('My Name is {name},Age is {age}'.format(name=name,age=age)) |
通过字典的方式作参数传递
1 | params = {'name':name,'age':age} |
将tuple作为可变参数传递特性
1 | params=('Tony',18) |
字符对齐
1 | print('{:>10},{:>10}'.format('tony',18))#左对齐 |
数字格式化
1 | #十进制转 |
浮点数精度控制
1 | pi = 3.1415926 |
三层{}可以转义
1 | print('{{{0:.2f}}}'.format(pi))#{3.14} |
Python多进程
- 进程创建
unix下使用fork方式创建子进程
1 | Process 24896 start ... |
变量在多进程之间并没有什么影响
windows下实现多进程用到了multiprocessing
pro = Process(target=pro_do,args=("test","dev"))
pro.start()
是否阻塞方式执行,如果有则阻塞,否则非阻塞
pro.join()
可以通过Pool进程池创建多个进程,可以指定启动的子进程数量
- 进程间通信
父进程可以指定子进程执行的方法及参数,达到父进程向子进程单项通信
子进程可以通过Queue方式向父进程通信write_queue
,read_queue
两个进程间的通信可以使用Pipe形式send_pipe
,recv_pipe