我不了解Scon,因此与重构有些混淆。虽然,我将从0755中删除“ 0”(由于无效的令牌SyntaxError)。关于我可以做什么的任何建议,包括文档字符串/注释。
import os
import re
# #SCONSTRUCT file interesting line
# config.version = Version(
# major=15,
# minor=0,
# point=6,
# patch=0
# )
def updateSconstruct():
os.chmod(os.path.join(os.environ["SourcePath"],"develop","global","src","SConstruct"), 0755)
fin = open(os.path.join(os.environ["SourcePath"],"develop","global","src","SConstruct"), 'r')
fout = open(os.path.join(os.environ["SourcePath"],"develop","global","src","SConstruct1"), 'w')
for line in fin:
pattern=re.sub("point\=[\d]+","point="+os.environ["BuildNum"],line)
fout.write(pattern)
fin.close()
fout.close()
os.remove(os.path.join(os.environ["SourcePath"],"develop","global","src","SConstruct"))
os.rename(os.path.join(os.environ["SourcePath"],"develop","global","src","SConstruct1"),
os.path.join(os.environ["SourcePath"],"develop","global","src","SConstruct"))
# # VERSION file interesting line
# ADLMSDK_VERSION_POINT=6
def updateVersion():
os.chmod(os.path.join(os.environ["SourcePath"],"develop","global","src","VERSION"), 0755)
fin = open(os.path.join(os.environ["SourcePath"],"develop","global","src","VERSION"), 'r')
fout = open(os.path.join(os.environ["SourcePath"],"develop","global","src","VERSION1"), 'w')
for line in fin:
pattern=re.sub("ADLMSDK_VERSION_POINT\=[\d]+","ADLMSDK_VERSION_POINT="+os.environ["BuildNum"],line)
fout.write(pattern)
fin.close()
fout.close()
os.remove(os.path.join(os.environ["SourcePath"],"develop","global","src","VERSION"))
os.rename(os.path.join(os.environ["SourcePath"],"develop","global","src","VERSION1"),
os.path.join(os.environ["SourcePath"],"develop","global","src","VERSION"))
def main():
updateSconstruct()
updateVersion()
main()
with
打开文件(在发生异常时自动关闭文件)。pathlib
联接路径)。black
之类的格式化程序进行适当的缩进和格式化。if __name__ == "__main__":
而不是单个main()
调用。