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相关推荐

  1. 萌新向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 ...

  2. 学完可以解决90%以上的数据分析问题-利用python进行数据分析第二版(代码和中文笔记)...

    <利用python进行数据分析>是数据分析的基础教程,绝大部分数据分析师的入门教材,目前已经升级到第二版.本站搜集了教材的第二版原版代码进行中文翻译和注释,并做了一定的笔记.基本上只需要看 ...

  3. python认证考试-PECP-30-02备考

    前言: 进入python institue官网查看认证内容和考试: 购买考试凭据: PCEP的政策: PCEP的考试大纲: Python作为目前业界最受欢迎的语言,是大部分数据分析相关从业人员的一项必 ...

  4. python的1000+篇文章总结

    python的1000+篇文章总结 本文收集和总结了有关python的1000+篇文章,由于篇幅有限只能总结近期的内容,想了解更多内容可以访问:http://www.ai2news.com/, 其分享 ...

  5. python简明教程word版-计算机开放电子书归档 2018

    97 Things Every Programmer Should Know A Java Reference (UCB CS61b Textbook) AI Cheat Sheet Advanced ...

  6. (超详细)0基础利用python调用Hadoop,云计算

    第一章配置Hadoop 前言 本次我们python+大数据的作业我选择附加一 利用hadoop+python实现,最近考完试有时间来完成. 这次我们用到的是Hadoop,利用python进行操作首先我 ...

  7. 数据分析的必备材料:学完可以解决90%以上的数据分析问题

    本文推荐数据分析的必备材料:Python官方中文文档和<利用python进行数据分析第二版>.本站认为,看完这两份材料,看懂代码,90%以上的数据分析问题都能解决. 一.Python官方中 ...

  8. 计算机开放电子书归档 2018

    97 Things Every Programmer Should Know Gitee 下载 Github 下载 SourceForge 下载 A Java Reference (UCB CS61b ...

  9. 计算机开放电子书归档 2018 1

    97 Things Every Programmer Should Know Gitee 下载 Github 下载 SourceForge 下载 A Java Reference (UCB CS61b ...

最新文章

  1. CentOS 5.6下创建KVM虚拟机
  2. Linux笔记:使用Vim编辑器
  3. PTA基础编程题目集-6-1 简单输出整数
  4. 2018年全球AI突破性技术TOP10
  5. 在Cacti上实现MSN报警机制
  6. 第九十三节,html5+css3移动手机端流体布局,基础CSS,头部设计,轮播设计,底部设计...
  7. Lombok介绍、附比较好用的几种注释推荐
  8. 孩子有心理问题不愿意做心理咨询,父母该怎么办?
  9. View DrawingCache的理解
  10. Atitit sql查询语法 SQL SELECT完整语法 3 1.SELECT语法 3 2.FROM子句 5 3.WHERE子句 6 下面两张表将在后面使用到 7 1.比较运算符 7 2.逻辑
  11. java导出excel_Java导出excel【复制粘贴直接用】
  12. Django1.9重写用户模型报错has no attribute 'USERNAME_FIELD'
  13. 数字谐音记忆编码连连看网页应用
  14. C++求最大公约数 两种方法
  15. Apache Passenger配置常用参数解读
  16. activiti学习(二十一)——流程虚拟机源码分析(三)——从进入到离开userTask
  17. SiC碳化硅二极管抗浪涌电流能力缺点及应对方式
  18. windows硬盘读写测试
  19. [免费专栏] Android安全之Android Fragment注入
  20. ChatGPT检测器(Detector)

热门文章

  1. Xcode里-ObjC, -all_load, -force_load
  2. 字节数组和字符串的相互转化……
  3. Could not resolve placeholder 'jdbc.url' in value ${jdbc.url}
  4. 洛谷P1434滑雪(逆向图的遍历搜索递归+记忆化,最长路问题)
  5. 老码农的Java干货资源
  6. ASP.NET的IIS映射
  7. OpenJudge数据结构与算法-计算点的距离并排序
  8. new、delete与malloc、free的详解
  9. [实战]java回调函数
  10. Nodejs博客开发笔记