使⽤命令⾏检查python语法错误和Debug 经常写shell脚本的⼯程师,写完shell脚本之后⼀定会检查shell脚本的语法是否有问题,可以使⽤:bash -x scripts.sh //如果有语法错误则会直接提⽰错误的地⽅,如果没有错误则没有任何输出,代码⽰例如下:
#!/bin/bash
for i in$(seq10);do
echo$i
done
[root@master 8]# bash -n test.sh                              //有语法错误时,去掉了循环结构的do
test.sh: line 3: syntax error near unexpected token `echo'
test.sh: line 3: `echo$i'
//修改之后,⽆语法错误时:
[root@master 8]# bash -n test.sh
[root@master 8]#
除此之外还可以使⽤bash -x scripts.sh来对脚本进⾏Debug。
那么python脚本如何检查语法错误呢?需要使⽤pyflakes⼯具。
注: 本⽰例python环境为:python3.9。
//安装pyflakes
python新手代码错了应该怎么改[root@master 8]# pip install --upgrade pyflakes
//代码⽰例
#!/usr/bin/env python
from test import test as computerinfo
user = computerinfo('tom', CPU='I7-1180H', GPU='3080', Memory='32G', Disk='1TSSD')
print(f"The {user['name']} computer is: ")
for k, v in user.items():
if k =='name':
continue
print(f"The {k} is {v}")
print("The computer is very goooooooood")
[root@master 8]# pyflakes test.py      //没有提⽰表⽰没有语法错误
[root@master 8]#
//⼿动修改脚本,删除⼀个冒号
[root@master 8]# pyflakes test.py      //报错
test.py:8:25: invalid syntax
for k, v in user.items()
对python脚本进⾏Debug,类似shell脚本的bash -x
[root@master 8]# python -m pdb test.py
debug参数
l # 查看运⾏到哪⾏代码
n # 单步运⾏,跳过函数
s # 单步运⾏,可进⼊函数p 变量 # 查看变量值
b ⾏号 # 断点设置到第⼏⾏b # 显⽰所有断点列表
cl 断点号 # 删除某个断点cl # 删除所有断点
c # 跳到下⼀个断点
r # return 当前函数
exit # 退出

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。