为teamcity的代码语法检查工具pyflakes增加支持python2和python3_热点评
TeamCity是一款由JetBrains公司开发的持续集成和部署工具,它提供了丰富的功能来帮助团队协作进行软件开发。其中包括代码检查、自动化构建、测试运行、版本控制等多个方面。
在我们团队中使用TeamCity进行配合pyflakes代码检查,我们需要升级pyflakes到支持python3,同时保留python2的语法检查功能。
【资料图】
pyflakes语法检查同时支持python2/3pyflakes在Teamcity中修改python脚本后,无需重启teamcity即可生效。
pyflakes · PyPI
查看版本:指令:pip list,pyflakes 2.3.1
teamcity代码:https://svn-xxx/tools/teamcity/check_pyflakes.py
从官网查到最后一个同时支持python2和3的pyflakes版本:https://pypi.org/project/pyflakes/2.4.0/,实测下来它要分别为py2和py3安装,而不是只安装一个来同时适配2和3。
关于pyflakes的使用和配置:python代码检查工具(静态代码审查)
python3的pyflakes支持python2吗?结论:不支持
语法有差别,比如print
PS D:\work\tools> python -u "d:\xxx\test_teamcity.py"[zhao]docheck py ast, is_py3:1 ,filePath:D:/debug/qing_debug.pyorigin msg: D:/xxx/qing_debug.py:54:9: invalid syntax print "[zhao]aaaaa" ^
再举个例子
PS D:\work\tools> python -u "d:\xxx\test_teamcity.py"[zhao]docheck py ast, is_py3:1 ,filePath:D:/debug/qing_debug.pyorigin msg: D:/debug/qing_debug.py:32:7: invalid syntax exec "print 111" ^
再来个例子
PS E:\Code\python_study\collection> py -3 -m pyflakes range_test.pyrange_test.py:9:1: "random" imported but unusedrange_test.py:14:10: undefined name "xrange"
官方的建议官方建议我们为python2/3分别安装pyflakes。
如何区分是python3还是python2?You can also invoke Pyflakes with python3 -m pyflakes . or python2 -m pyflakes . if you have it installed for both versions.
按工程人工标记,因为同一个工程中python2和3不能混用,所以在写代码的时候程序员就已经知道当前工程应该用python2解释器还是python3解释器。
因为一个py脚本是要放到python2还是python3的解释器来执行是由程序员来决定的。
一台电脑同时安装python2和3我们在安装Python3(>=3.3)时,Python的安装包实际上在系统中安装了一个启动器py.exe,默认放置在文件夹C:\Windows\下面。这个启动器允许我们指定使用Python2还是Python3来运行代码(当然前提是你已经成功安装了Python2和Python3)。
在安装python3时不要勾选添加安装目录到环境变量中,下面这几个都不要添加到环境变量的path中
C:\Python38
C:\Python38\Scripts
同时不要把这几个目录添加到环境变量的path中
C:\Users\zhaoqingqing01\AppData\Local\Programs\Python\Python38\
C:\Users\zhaoqingqing01\AppData\Local\Programs\Python\Python38\Scripts\
使用pip安装库我们在安装python3的时候没有把py3添加到环境变量中,所以当我们使用pip时默认是指向python2。
如果你不放心,还可以这样:py -2 -m pip install XXXX
为Python3安装软件:py -3 -m pip install XXXX
更多原理性的知识,欢迎查阅我的KM文章:zhaoqingqing的网易km个人空间 (netease.com)
为python3安装 pyflakespy -3 -m pip install pyflakes
C:\Users\zhaoqingqing01>py -3 -m pip install pyflakesCollecting pyflakes Downloading pyflakes-3.0.1-py2.py3-none-any.whl (62 kB) |████████████████████████████████| 62 kB 4.8 MB/sInstalling collected packages: pyflakes WARNING: The script pyflakes.exe is installed in "C:\Python38\Scripts" which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.Successfully installed pyflakes-3.0.1
pyflakes检查python语法pyflakes console.py >logPyflakes.txt 2>&1
py -3 -m pyflakes console.py >logPyflakes.txt 2>&1
PS D:\work\tools\start_docker\scripts> pyflakes console.pyconsole.py:20:10: invalid syntax async def connect(self, command): ^PS D:\work\tools\start_docker\scripts> py -3 -m pyflakes console.pyPS D:\work\tools\start_docker\scripts>
集成到teamcity旧版只支持到python2PS D:\work\tools> python -u "d:\xxx\test_teamcity.py"[zhao]docheck py ast , is_py3:0 ,filePath:D:/xxx/console.pyorigin msg D:/xxx/console.py:20:10: invalid syntax async def connect(self, command): ^
开启python3支持PS D:\work\tools> python -u "d:\xxx\test_teamcity.py"[zhao]docheck py ast , is_py3:1 ,filePath:D:/xxx/console.pyorigin msg
参数是啥意思python 执行保存log 1>>log.txt 2>&1_python 2>log.txt_做测试的喵酱的博客-CSDN博客
Python—后台运行(nohup 、&、 2>&1详解) - 刘_love_田 - 博客园 (cnblogs.com)
关键词:
下一篇:最后一页
- 女童不慎掉入20米深井 18岁小姨三次下井成功营救
- 西安3个区域12月28日起每日开展全员核酸 官方提倡民众居家健身
- 浙江乐清一核酸检测结果异常人员 复采复检为阴性
- 浙江本轮疫情报告确诊病例490例 提倡“双节”非必要不出省
- 西安警方通报6起涉疫违法案件
- 西安新一轮核酸筛查日检测能力达160万管
- 西安市累计报告本土确诊病例811例
- 重庆曝光4起违反中央八项规定精神典型问题 警示党员干部清新过节
- 云南清水河边检站查获走私玉石和玉石毛料65公斤
- 吉林市政协原党组成员、副主席孙洪彬被开除党籍和公职
-
云南清水河边检站查获走私玉石和玉石毛料65公斤
中新网临沧12月28日电 (徐媛 雷珍玉)记者28日从云南清水河出入境边防检查站获悉,该站近日在清水河口岸查获一起利用货车藏匿走私玉石
-
吉林市政协原党组成员、副主席孙洪彬被开除党籍和公职
中央纪委国家监委网站讯 据吉林省纪委监委消息:日前,经吉林省委批准,吉林省纪委监委对吉林市政协原党组成员、副主席孙洪彬严重违纪
-
陕西延安新增2例确诊病例 活动轨迹公布
陕西延安新增2例确诊病例 活动轨迹公布→ 今日(28日),陕西延安市举行新冠肺炎疫情防控新闻发布会。会上介绍,截至2021年12月28日
-
陕西延安公布新划定中风险地区
12月28日,陕西延安市举行新冠肺炎疫情防控新闻发布会。 为了进一步强化辖区疫情防控工作,延安市宝塔区应对疫情指挥部出台了五条防
-
陕西延安新增2例本土确诊病例 均在宝塔区
今日(28日),陕西延安市举行新冠肺炎疫情防控新闻发布会。 会上介绍,截至2021年12月28日,延安市新增本土确诊病例2例,均在宝塔区
-
西安累计报告本土确诊病例811例
今天(12月28日)下午,西安市召开疫情防控新闻发布会,介绍疫情防控最新进展。 会上通报,2021年12月27日0时-24时,西安市新增本土
-
西安疫情的八个关键问题,专家这么研判
这几天,西安的疫情牵动着全国人民的心。12月27日,西安市新增确诊病例175例。从12月9日0时到12月27日24时,本轮西安全市累计报告本土
-
向家暴说“不 ” 山西各方联动打通反家暴“最后一公里”
中新网太原12月28日电 题:向家暴说“不” 山西各方联动打通反家暴“最后一公里” 作者 吴琼 高瑞峰 赵娟 “对于家庭暴力
-
让农民工不再忧“薪” 湖南祁阳高效根治欠薪
中新网永州12月28日电 (刘志军 周盛波)“感谢你们,没有你们不辞辛苦、多次讨要,我们肯定拿不着钱,这个年肯定过不好。”27日,农民
-
外逃死亡的犯罪嫌疑人张正欣贪污违法所得没收案一审公开宣判
青岛市中级人民法院今天对犯罪嫌疑人张正欣贪污违法所得没收案进行公开宣判,裁定没收高度可能属于张正欣贪污违法所得的5家公司100%股
X 关闭
北京将建立保障房房源长效筹集机制 持续优化审核分配机制
南宁水源地环境问题提前清零 以高质量饮水安全促进乡村振兴
西安新增本土确诊病例150例 详情发布
广东最低气温跌至-6℃现冰挂 部分道路及海上交通受影响
“2022科学跨年系列活动”启动 提高公众对科学类流言“免疫力”
X 关闭
前沿资讯!“5G+北斗”,高精定位能做些啥
材料科学与工程专业大学排名_材料科学与工程_天天热闻
qq密码泄露什么意思_qq提示密码泄露是什么意思简介介绍 全球报道
每体:托雷今夏将随巴萨一队去日本踢友谊赛,之后再决定未来
每日播报!林世伟_关于林世伟概略