搭建 HTTP 服务器
python -m http.server <port> --bind <ip> -d <path>
搭建 FTP 服务器
# pip install pyftpdlib
# -w: 写权限(默认为只读)
# -i: 指定IP地址(默认为本机的IP地址)
# -p: 指定端口(默认为2121)
python -m pyftpdlib -w -p [PORT] -d [PATH] -u [USER] -P [PASSWORD]
添加 PATH 变量
import sys
sys.path.append("<your path>")
获取当前工作目录路径
import os
os.getcwd()
判断文件/文件夹是否存在
import os
os.path.exists(<filename|dir>)
只判断文件是否存在(如果文件夹和文件重名可能会误判)
import os
os.path.isfile(<filename>)
性能测试
时间测试
简单粗暴,用 cProfile 模块:
python3 -m cProfile someprogram.py
也可以在环境中导入 cProfile
模块:
profiler = cProfile.Profile()
profiler.enable()
# do something
profiler.disable()
profiler.dump_stats("xxx.stats")
然后 dump 出来的文件可以用 snakeviz 查看:
snakeviz -s xxx.stats
内存测试
python 提供了 tracemalloc 模块,可以帮助测试:
def get_pymem_info():
snapshot = tracemalloc.take_snapshot()
top_stats = snapshot.statistics('lineno')
logger.info("[ Top 20 ]")
for stat in top_stats[:20]:
logger.info(stat)
tracemalloc.start()
# do sth
if needed:
get_pymem_info()