Python默认情况指Python3
python -m venv ~/venv
创建需环境到 ~/venv
source ~/venv/bin/activate
激活虚环境which python
查看当前Python是否为虚环境Pythonpython -m http.server
以当前目录为根目录,启动HTTP服务器
以Python3和Flask为例
依赖:
pip install yattag
HTML组装pip install stringcase
字符串格式转换app.py
from flask import Flask
from stringcase import spinalcase
from yattag import Doc
from yattag import indent
app = Flask(__name__)
@app.route("/")
def home():
return "Hello World!"
@app.route("/placeholder/fullwidth/<height>/<content>")
def placeholder(height, content):
doc, tag, text = Doc().tagtext()
with tag("html"):
with tag("body"):
doc.attr(style="margin:0")
with tag("div"):
doc.attr(style=";".join(["{}:{}".format(spinalcase(k), v) for k, v in dict(
width="100%",
height=height,
display="flex",
alignItems='center',
justifyContent='center',
background="magenta",
fontSize="36pt"
).items()]))
text(content)
return indent(doc.getvalue())
env python -c "import sys; print(sys.executable)"
def main():
import random
color = random.randint(0, 0XFFFFFF)
oppo_color = 0XFFFFFF - color
print("Color: #{:06X}".format(color))
print("OppoColor: #{:06X}".format(oppo_color))
if __name__ == '__main__':
main()
输出:
Color: #C78AE3
OppoColor: #38751C
from colorlog import logging
logging.basicConfig(level='DEBUG',
format='%(black)s%(asctime)s.%(msecs)03d %(log_color)s%(levelname)8s%(reset)s %(black)s%(name)-10s %(message)s',
datefmt='%Y-%m-%d %H:%M:%S')
logging.debug("DEBUG")
logging.info("INFO")
logging.warning("WARN")
Python默认不开启日志,需要调用logging.basicConfig()
显式开启
Python默认的日志级别是WARN
Python默认的日志实现不支持控制台颜色,只是直接打印到了标准错误流。使用第三方库(colorlog)可以启用彩色日志
Python的日期时间格式只有微秒,没有毫秒,所以在日志里打毫秒,要单独使用标识%(msecs)03d
控制台输出:
2018-12-07 15:40:22.877 DEBUG root DEBUG
2018-12-07 15:40:22.877 INFO root INFO
2018-12-07 15:40:22.877 WARNING root WARN
python -mpydoc -b
在本机启动文档服务器到任意端口,并用浏览器打开
Python本机调试,即使用PDB调试,主要有两种方式
import pdb
pdb.set_trace()
可以使用pdb.set_trace()
在当前行设置断点,执行python程序时,会在断点处进入PDB控制台
python -mpdb helloworld.py
执行此命令,会进入PDB控制台,并断在第一行代码处
ipdb
是PDB
结合IPython
的改进版,支持语法高亮,可随时执行表达式,拥有更好的交互体验
安装方式: pip install ipdb
使用方式: python -mipdb helloworld.py