加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

8 个 Python 适用剧本,保藏备用

发布时间:2019-10-10 06:34:07 所属栏目:建站 来源:实验楼
导读:剧本写的好,放工下得早!措施员的一般事变除了编写措施代码,还不行停止地必要处理赏罚相干的测试和验证事变。 譬喻,会见某个网站一向不通,必要确定此地点是否可会见,处事器返回什么,进而确定题目在于什么。完成这个使命,假如一味但愿回收编译型说话来编
副问题[/!--empirenews.page--]

剧本写的好,放工下得早!措施员的一般事变除了编写措施代码,还不行停止地必要处理赏罚相干的测试和验证事变。

8 个 Python 适用剧本,保藏备用

譬喻,会见某个网站一向不通,必要确定此地点是否可会见,处事器返回什么,进而确定题目在于什么。完成这个使命,假如一味但愿回收编译型说话来编写这样的代码,实践中的时刻和精神是不足的,这个时辰就必要施展剧本的神奇浸染!

好不浮夸的说,可否写出高效适用的剧本代码,直接影响着一个措施员的幸福糊口[放工时刻]。下面清算 8 个适用的 Python 剧本,必要的时辰改改直接用,提议保藏!

1.办理 linux 下 unzip 乱码的题目。

  1. import os 
  2. import sys 
  3. import zipfile 
  4. import argparse 
  5. s = 'x1b[%d;%dm%sx1b[0m'  
  6. def unzip(path): 
  7.  file = zipfile.ZipFile(path,"r") 
  8.  if args.secret: 
  9.  file.setpassword(args.secret) 
  10.  for name in file.namelist(): 
  11.  try: 
  12.  utf8name=name.decode('gbk') 
  13.  pathname = os.path.dirname(utf8name) 
  14.  except: 
  15.  utf8name=name 
  16.  pathname = os.path.dirname(utf8name) 
  17.  #print s % (1, 92, ' >> extracting:'), utf8name 
  18.  #pathname = os.path.dirname(utf8name) 
  19.  if not os.path.exists(pathname) and pathname != "": 
  20.  os.makedirs(pathname) 
  21.  data = file.read(name) 
  22.  if not os.path.exists(utf8name): 
  23.  try: 
  24.  fo = open(utf8name, "w") 
  25.  fo.write(data) 
  26.  fo.close 
  27.  except: 
  28.  pass 
  29.  file.close() 
  30. def main(argv): 
  31.  ###################################################### 
  32.  # for argparse 
  33.  p = argparse.ArgumentParser(description='办理unzip乱码') 
  34.  p.add_argument('xxx', type=str, nargs='*',  
  35.  help='呼吁工具.') 
  36.  p.add_argument('-s', '--secret', action='store',  
  37.  default=None, help='暗码') 
  38.  global args 
  39.  args = p.parse_args(argv[1:]) 
  40.  xxx = args.xxx 
  41.  for path in xxx: 
  42.  if path.endswith('.zip'): 
  43.  if os.path.exists(path): 
  44.  print s % (1, 97, ' ++ unzip:'), path 
  45.  unzip(path) 
  46.  else: 
  47.  print s % (1, 91, ' !! file doesn't exist.'), path 
  48.  else: 
  49.  print s % (1, 91, ' !! file isn't a zip file.'), path 
  50. if __name__ == '__main__': 
  51.  argv = sys.argv 
  52.  main(argv) 

2.统计当前根目次代码行数。

  1. # coding=utf-8 
  2. import os 
  3. import time 
  4. # 设定根目次 
  5. basedir = './' 
  6. filelists = [] 
  7. # 指定想要统计的文件范例 
  8. whitelist = ['cpp', 'h'] 
  9. #遍历文件, 递归遍历文件夹中的全部 
  10. def getFile(basedir): 
  11.  global filelists 
  12.  for parent,dirnames,filenames in os.walk(basedir): 
  13.  for filename in filenames: 
  14.  ext = filename.split('.')[-1] 
  15.  #只统计指定的文件范例,略过一些log和cache文件 
  16.  if ext in whitelist: 
  17.  filelists.append(os.path.join(parent,filename)) 
  18. #统计一个的行数 
  19. def countLine(fname): 
  20.  count = 0 
  21.  # 把文件做二进制对待,read. 
  22.  for file_line in open(fname, 'rb').readlines(): 
  23.  if file_line != '' and file_line != 'n': #过滤掉空行 
  24.  count += 1 
  25.  print (fname + '----' , count) 
  26.  return count 
  27. if __name__ == '__main__' : 
  28.  startTime = time.clock() 
  29.  getFile(basedir) 
  30.  totalline = 0 
  31.  for filelist in filelists: 
  32.  totalline = totalline + countLine(filelist) 
  33.  print ('total lines:',totalline) 
  34.  print ('Done! Cost Time: %0.2f second' % (time.clock() - startTime)) 

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读