Python 3 Basics
1. 科学计数法:
>>> format(pow(1.3,50)*10000,'.2e')
'4.98e+09'
2. Python文件操作
主要功能,1)扫描目录,找到APK文件;2)解析debug/release;3)使用debug/release+time生成文件名;4)复制文件到远程目录给测试。
import sys,os,shutil,zipfile,time,string,re #导入依赖库def getTime():return time.strftime("%m_%d_%H_%M",time.localtime(time.time()))def FindapkName(MyPath): found =0 for fileName in os.listdir(MyPath): FilePath = os.path.abspath(os.path.join(MyPath, fileName)) #print('遍历文件 :' + FilePath )# 输出找到的.txt格式的文件 if ".apk" in fileName:print('找到apk文件 :' + FilePath )if found==1:print('找到多个APK文件,退出')sys.exit(1)found =1foundPath = FilePathif found==1:return foundPathelse:print('没有找到apk')sys.exit(1)def removeDot(line): return re.sub(r'[{}]+'.format(string.punctuation),'',line )def getIsDebug(fileName):if "debug.apk" in fileName:return 'debug'if "release.apk" in fileName:return 'release';print('getIsDebug failed')sys.exit(1)def getAppVersion(fileName):file = open(fileName, mode='r', encoding='UTF-8')for line in file:lineContent = line.split()#print(lineContent)if len(lineContent) ==2:#print(lineContent)if lineContent[0] == 'versionName':version = lineContent[1]#strip ""return eval(version)print('getAppVersion failed')sys.exit(1)#get version
gradleFileName = os.getcwd()+'/app/'+'build.gradle'
version = getAppVersion(gradleFileName)
print('version='+version)appDIR = os.getcwd()+'/app/'
remoteDir = '//10.18.0.100/test/'#get AS generated APK
ASGeneratedName = FindapkName(appDIR)
#print('ASGeneratedName =' + ASGeneratedName)#get debug
# settingFileName = os.getcwd()+'/app/'+'src/main/java/'+'AppSetting.java'
debugString = getIsDebug(ASGeneratedName)
print('isDebug =' + debugString)releaseAPKName = 'SelfDriving_v' + version + '_'+debugString + '_'+getTime()+'.apk'#write to 100
remoteVersiondDIR = remoteDir+'v'+version
if os.path.exists(remoteVersiondDIR) == False:print('创建远程目录'+remoteVersiondDIR)os.mkdir(remoteVersiondDIR)
else:print('远程目录'+remoteVersiondDIR+'已经存在')print('写入文件:'+remoteVersiondDIR+'/'+releaseAPKName +'请耐心等待')
shutil.copy(ASGeneratedName,remoteVersiondDIR+'/'+releaseAPKName)remoteFile = 'SelfDriving_'+debugString+'.apk'
print('写入文件:'+remoteDir+remoteFile)
shutil.copyfile(ASGeneratedName,remoteDir+remoteFile)#delete local APK
os.remove(ASGeneratedName)
转载于:https://www.cnblogs.com/canggou/p/7569813.html
Python 3 Basics相关推荐
- 萌新向Python数据分析及数据挖掘 第二章 pandas 第二节 Python Language Basics, IPython, and Jupyter Notebooks...
Python Language Basics, IPython, and Jupyter Notebooks In [5]: import numpy as np #导入numpy np.random ...
- 学完可以解决90%以上的数据分析问题-利用python进行数据分析第二版(代码和中文笔记)...
<利用python进行数据分析>是数据分析的基础教程,绝大部分数据分析师的入门教材,目前已经升级到第二版.本站搜集了教材的第二版原版代码进行中文翻译和注释,并做了一定的笔记.基本上只需要看 ...
- python认证考试-PECP-30-02备考
前言: 进入python institue官网查看认证内容和考试: 购买考试凭据: PCEP的政策: PCEP的考试大纲: Python作为目前业界最受欢迎的语言,是大部分数据分析相关从业人员的一项必 ...
- python的1000+篇文章总结
python的1000+篇文章总结 本文收集和总结了有关python的1000+篇文章,由于篇幅有限只能总结近期的内容,想了解更多内容可以访问:http://www.ai2news.com/, 其分享 ...
- python简明教程word版-计算机开放电子书归档 2018
97 Things Every Programmer Should Know A Java Reference (UCB CS61b Textbook) AI Cheat Sheet Advanced ...
- (超详细)0基础利用python调用Hadoop,云计算
第一章配置Hadoop 前言 本次我们python+大数据的作业我选择附加一 利用hadoop+python实现,最近考完试有时间来完成. 这次我们用到的是Hadoop,利用python进行操作首先我 ...
- 数据分析的必备材料:学完可以解决90%以上的数据分析问题
本文推荐数据分析的必备材料:Python官方中文文档和<利用python进行数据分析第二版>.本站认为,看完这两份材料,看懂代码,90%以上的数据分析问题都能解决. 一.Python官方中 ...
- 计算机开放电子书归档 2018
97 Things Every Programmer Should Know Gitee 下载 Github 下载 SourceForge 下载 A Java Reference (UCB CS61b ...
- 计算机开放电子书归档 2018 1
97 Things Every Programmer Should Know Gitee 下载 Github 下载 SourceForge 下载 A Java Reference (UCB CS61b ...
最新文章
- CentOS 5.6下创建KVM虚拟机
- Linux笔记:使用Vim编辑器
- PTA基础编程题目集-6-1 简单输出整数
- 2018年全球AI突破性技术TOP10
- 在Cacti上实现MSN报警机制
- 第九十三节,html5+css3移动手机端流体布局,基础CSS,头部设计,轮播设计,底部设计...
- Lombok介绍、附比较好用的几种注释推荐
- 孩子有心理问题不愿意做心理咨询,父母该怎么办?
- View DrawingCache的理解
- Atitit sql查询语法 SQL SELECT完整语法	3 1.SELECT语法	3 2.FROM子句	5 3.WHERE子句	6 下面两张表将在后面使用到	7 1.比较运算符	7 2.逻辑
- java导出excel_Java导出excel【复制粘贴直接用】
- Django1.9重写用户模型报错has no attribute 'USERNAME_FIELD'
- 数字谐音记忆编码连连看网页应用
- C++求最大公约数 两种方法
- Apache Passenger配置常用参数解读
- activiti学习(二十一)——流程虚拟机源码分析(三)——从进入到离开userTask
- SiC碳化硅二极管抗浪涌电流能力缺点及应对方式
- windows硬盘读写测试
- [免费专栏] Android安全之Android Fragment注入
- ChatGPT检测器(Detector)
热门文章
- Xcode里-ObjC, -all_load, -force_load
- 字节数组和字符串的相互转化……
- Could not resolve placeholder 'jdbc.url' in value ${jdbc.url}
- 洛谷P1434滑雪(逆向图的遍历搜索递归+记忆化,最长路问题)
- 老码农的Java干货资源
- ASP.NET的IIS映射
- OpenJudge数据结构与算法-计算点的距离并排序
- new、delete与malloc、free的详解
- [实战]java回调函数
- Nodejs博客开发笔记