利用Python脚本过滤文件中注释的方法

  介绍

利用Python脚本过滤文件中注释的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

确保对模块,函数,方法和行内注释使用正确的风格,Python中的注释有单行注释和多行注释。如果希望去除文件中所有注释,如何做呢?

<强> Python中的注释:

Python中单行注释以#开头,例如::

#,这是一个注释   打印(“你好,世界!“)

多行注释用三个单引号& # 39;& # 39;& # 39;或者三个双引号“““将注释括起来,例如:

# !/usr/bin/python3    & # 39;& # 39;& # 39;   这是多行注释,用三个单引号   这是多行注释,用三个单引号,   这是多行注释,用三个单引号   & # 39;& # 39;& # 39;   打印(“你好,世界!“)

<强>使用Python脚本快速去除文件中的注释:

# !/usr/bin/python    #,- *安康;编码:,GBK  - *安康;   #作者:xmnathan    # py文件去注释,   import  re    import  os    import  ConfigParser    Python=& # 39; CleanNote& # 39;   def  ReadIni(路径、部分选项):#文件路径,章节,关键词,   #读才能取ini   cf才能=ConfigParser.ConfigParser (),   cf.read才能(路径),   价值才能=https://www.yisu.com/zixun/cf.get(部分,选项)#如果用getint()则直接读取该数据类型为整数   返回值   def IsPassLine (strLine):   #是否是可以忽略的行   #可忽略行的正则表达式列表   RegularExpressions=[" "/* # */!薄啊?“”“/薄? # */薄啊薄?   ”“”/'/'/'。* # *///薄啊?“”“/??薄? #。*/"/" " ")   一个在RegularExpressions:   zz=re.compile(一个)   如果re.search (zz, strLine)==没有:   继续   其他:   还真#有匹配则忽略   返回假   def ReadFile(文件名):   #读取并处理文件   fobj=开放(文件名,“r”)   AllLines=fobj.readlines ()   fobj.close ()   NewStr="   LogStr=/n % 20年代/n % (FileName.split(“//?[1]) #输出的日志   在线=0   在AllLines eachiline:   指数=eachline.find(“#”) #获取带注释句“#”的位置索引   如果指数==1或在线<3或IsPassLine (eachline):   如果eachiline.strip() !=": #排除纯空的行   NewStr=NewStr + eachiline   其他:   如果指数!=0:   NewStr=NewStr + eachiline(指数):+/n的#截取后面的注释部分   LogStr +=癈hangeLine: % s/t % s %(在线,eachline(指数:))   在线+=1   返回NewStr LogStr   def MakeCleanFile (SrcPath DescPath,文件列表):   鞭打=开放(DescPath +“//?“CleanNoteLog.txt”,“w”)   文件的文件列表:   curStr LogStr=ReadFile (SrcPath +‘//?文件)   fNew=开放(DescPath +‘//?文件,“w”)   fNew=写(curStr)   fNew.close ()   fLog.write (LogStr)   fLog.close ()   def Main ():   #从ini获取源文件夹及目标文件夹路径   IniPath=os.getcwd () +‘//? PtName + . ini的   SrcPath=ReadIni (IniPath、PyName SrcPath) #源文件夹   DescPath=ReadIni (IniPath、PyName DescPath) #目的文件夹   #如果目的文件夹不存在,创建之   如果不是os.path.exists (DescPath):   os.makedirs (DescPath)   文件列表=[]   文件在os.walk (SrcPath):   文件名的文件[2]:   如果FileName.split (“。”) [1]==皃y”:   FileList.append(文件名)   MakeCleanFile (SrcPath DescPath文件列表)   if __name__==癬_main__”:   Main ()   打印“>> <<结束”   os.system(“暂停”)

ps: <强>配置文件CleanNote。ini的格式

[CleanNote],   SrcPath=E:/test    DescPath=E:/测试/newfile中

批量去除指定源文件夹中的py文件的注释,并生成拷贝与指定目的文件夹

感谢各位的阅读!看完上述内容,你们对利用Python脚本过滤文件中注释的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。

利用Python脚本过滤文件中注释的方法