[思考]代码的语义正确真的就够了吗?(8)

http://www.smzswang.com时间:2016-10-28 13:22来源:未知

open(bak_conf) as bak: config.readfp(bak) bak. seek( 0) f. truncate() forline in bak: f. write(line) f.flush() os.remove(bak_conf) else: config.readfp(f) ifnotconfig.has_section( 'section x'): config.add_section( 'section x') bak_conf_tmp = '~'+ bak_conf with open(bak_conf_tmp, 'w') as bak: config. write(bak) os. rename(bak_conf_tmp, bak_conf) f. seek( 0) f. truncate() config. write(f) f.flush() os.remove( 'config.ini.bak')

  这样一来不管进程在执行到哪一步的时候崩溃,都不影响数据的完整性和一致性了,把进程拉起来后重新执行就好。

【免责声明】本文仅代表作者个人观点,与中国数码招商网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。您若对该稿件内容有任何疑问或质疑,请联系本网将迅速给您回应并做处理。