最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python文件去除注釋的方法

 更新時(shí)間:2015年05月25日 12:33:06   作者:惟愿蓮心不染塵  
這篇文章主要介紹了Python文件去除注釋的方法,涉及Python正則表達(dá)式及文件操作的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了Python文件去除注釋的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

#!/usr/bin/python 
# -*- coding: GBK -*- 
#writer:xmnathan 
#py文件去注釋 
import re 
import os 
import ConfigParser 
Python='CleanNote' 
def ReadIni(path,section,option):#文件路徑,章節(jié),關(guān)鍵詞 
  #讀取ini
  cf=ConfigParser.ConfigParser() 
  cf.read(path) 
  value=cf.get(section,option)#如果用getint()則直接讀取該數(shù)據(jù)類(lèi)型為整數(shù) 
  return value 
def IsPassLine(strLine): 
  #是否是可以忽略的行 
  #可忽略行的正則表達(dá)式列表 
  RegularExpressions=["""/'.*#.*/'""","""/".*#.*/"""", 
            """/'/'/'.*#.*/'/'/'""","""/"/"/".*#.*/"/"/""""]
  for One in RegularExpressions: 
    zz=re.compile(One) 
    if re.search(zz,strLine)==None: 
      continue 
    else: 
      return True#有匹配 則忽略 
    return False 
def ReadFile(FileName): 
  #讀取并處理文件 
  fobj=open(FileName,'r') 
  AllLines=fobj.readlines() 
  fobj.close() 
  NewStr='' 
  LogStr='/n%20s/n'%(FileName.split('//')[-1])#輸出的日志 
  nline=0 
  for eachiline in AllLines: 
    index=eachline.find('#')#獲取帶注釋句‘#'的位置索引 
    if index==-1 or nline<3 or IsPassLine(eachline): 
      if eachiline.strip()!='':#排除純空的行 
        NewStr=NewStr+eachiline 
    else: 
      if index!=0: 
        NewStr=NewStr+eachiline[:index]+'/n'#截取后面的注釋部分 
        LogStr+="ChangeLine: %s/t%s"%(nline,eachline[index:]) 
    nline+=1 
  return NewStr,LogStr 
def MakeCleanFile(SrcPath,DescPath,FileList): 
  fLog=open(DescPath+'//'+'CleanNoteLog.txt','w') 
  for File in FileList: 
    curStr,LogStr=ReadFile(SrcPath+'//'+File) 
    fNew=open(DescPath+'//'+File,'w') 
    fNew=write(curStr) 
    fNew.close() 
    fLog.write(LogStr) 
  fLog.close() 
def Main(): 
  #從ini獲取源文件夾及目標(biāo)文件夾路徑 
  IniPath=os.getcwd()+'//'+PtName+'.ini' 
  SrcPath=ReadIni(IniPath,PyName,'SrcPath')#源文件夾 
  DescPath=ReadIni(IniPath,PyName,'DescPath')#目的文件夾 
  #如果目的文件夾不存在,創(chuàng)建之 
  if not os.path.exists(DescPath): 
    os.makedirs(DescPath) 
  FileList=[] 
  for files in os.walk(SrcPath): 
    for FileName in files[2]: 
      if FileName.split('.')[-1]=='py': 
        FileList.append(FileName) 
  MakeCleanFile(SrcPath,DescPath,FileList) 
if __name__=='__main__': 
  Main() 
  print '>>>End<<<' 
  os.system('pause') 

ps:配置文件CleanNote.ini的格式

[CleanNote] 
SrcPath=E:/test 
DescPath=E:/test/newfiles 

 
批量去除指定源文件夾中的py文件的注釋?zhuān)⑸煽截惻c指定目的文件夾

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • python實(shí)現(xiàn)爬山算法的思路詳解

    python實(shí)現(xiàn)爬山算法的思路詳解

    爬山算法會(huì)收斂到局部最優(yōu),解決辦法是初始值在定義域上隨機(jī)取亂數(shù)100次,總不可能100次都那么倒霉。這篇文章主要介紹了python實(shí)現(xiàn)爬山算法的思路詳解,需要的朋友可以參考下
    2019-04-04
  • mac下如何將python2.7改為python3

    mac下如何將python2.7改為python3

    這篇文章主要介紹了mac下如何將python2.7改為python3,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • VS2019+python3.7+opencv4.1+tensorflow1.13配置詳解

    VS2019+python3.7+opencv4.1+tensorflow1.13配置詳解

    這篇文章主要介紹了VS2019+python3.7+opencv4.1+tensorflow1.13配置詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 如何基于opencv實(shí)現(xiàn)簡(jiǎn)單的數(shù)字識(shí)別

    如何基于opencv實(shí)現(xiàn)簡(jiǎn)單的數(shù)字識(shí)別

    現(xiàn)在很多場(chǎng)景需要使用的數(shù)字識(shí)別,比如銀行卡識(shí)別,以及車(chē)牌識(shí)別等,在AI領(lǐng)域有很多圖像識(shí)別算法,大多是居于opencv 或者谷歌開(kāi)源的tesseract 識(shí)別,下面這篇文章主要給大家介紹了關(guān)于如何基于opencv實(shí)現(xiàn)簡(jiǎn)單的數(shù)字識(shí)別,需要的朋友可以參考下
    2021-09-09
  • Python+OpenCV六種實(shí)時(shí)圖像處理詳細(xì)講解

    Python+OpenCV六種實(shí)時(shí)圖像處理詳細(xì)講解

    OpenCV常用的圖像處理為閾值二值化、邊緣檢測(cè)、輪廓檢測(cè)、高斯濾波、色彩轉(zhuǎn)換、調(diào)節(jié)對(duì)比度。本文主要介紹了利用Python和OpenCV對(duì)實(shí)時(shí)圖像進(jìn)行上述六種操作的詳細(xì)講解,感興趣的可以了解一下。
    2021-11-11
  • python Plotly繪圖工具的簡(jiǎn)單使用

    python Plotly繪圖工具的簡(jiǎn)單使用

    這篇文章主要介紹了python Plotly繪圖工具的簡(jiǎn)單使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • python實(shí)現(xiàn)的Iou與Giou代碼

    python實(shí)現(xiàn)的Iou與Giou代碼

    今天小編就為大家分享一篇python實(shí)現(xiàn)的Iou與Giou代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • 基于Python編寫(xiě)一個(gè)文檔密碼移除工具

    基于Python編寫(xiě)一個(gè)文檔密碼移除工具

    保護(hù)文檔內(nèi)容是常見(jiàn)的需求,但有時(shí)我們可能會(huì)忘記或丟失文檔的密碼,導(dǎo)致無(wú)法訪問(wèn)重要信息,本文將介紹如何使用Python創(chuàng)建一個(gè)簡(jiǎn)單而實(shí)用的文檔密碼移除工具,需要的可以參考下
    2023-12-12
  • python分布式編程實(shí)現(xiàn)過(guò)程解析

    python分布式編程實(shí)現(xiàn)過(guò)程解析

    這篇文章主要介紹了python分布式編程實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 利用Python腳本在Nginx和uwsgi上部署MoinMoin的教程

    利用Python腳本在Nginx和uwsgi上部署MoinMoin的教程

    這篇文章主要介紹了利用Python腳本在Nginx和uwsgi上部署MoinMoin的教程,示例基于CentOS操作系統(tǒng),需要的朋友可以參考下
    2015-05-05

最新評(píng)論

资溪县| 本溪市| 中卫市| 滨海县| 黄冈市| 抚宁县| 石景山区| 永寿县| 青川县| 黄龙县| 顺义区| 哈密市| 闽侯县| 绥德县| 蓬莱市| 汝阳县| 九江市| 木里| 亚东县| 宁津县| 南开区| 耿马| 如东县| 彝良县| 化隆| 长阳| 金平| 绵竹市| 遵化市| 钦州市| 高要市| 襄汾县| 筠连县| 蒲江县| 天峻县| 江达县| 鄂托克前旗| 鄂伦春自治旗| 来凤县| 梁河县| 荣成市|