梅江区住房和城乡建设局官方网站,国家信息公示网查营业执照,为什么招聘网站做不大,网站psd 模板突发奇想#xff0c;想要将自己的c压行之后交上去。但是苦于手动压行效率太低#xff0c;在网上搜索压行网站没有找到#xff0c;突然发现压行不就是检查检查去个换行符吗。于是心血来潮#xff0c;用python实现了一个简易压行程序。
首先#xff0c;宏定义等带#的文件不…突发奇想想要将自己的c压行之后交上去。但是苦于手动压行效率太低在网上搜索压行网站没有找到突然发现压行不就是检查检查去个换行符吗。于是心血来潮用python实现了一个简易压行程序。
首先宏定义等带#的文件不能跟压行会报错。其次是行注释要删除不能这一行后面都被注释掉了。
因此我用一个变量txt表示压行之后的内容每次用line读取行字符串内容。将line字符串中//后面的内容舍去。
用strip函数得到line剔除空格和换行符等。如果line里有#字符就不进行换行。由于不换行需要考虑压行后的txt字符串中是否有换行符\n如果已经有了则不用再txt后面再加入\n否则需要在txt字符串后添加换行符。由于后面的行也不能在该行后面所以在line字符串后添加换行符。将line拼接到txt后面即可。
with open(filerlab.cpp, moder, encodingutf-8) as fb:# 考虑第一行就是#等txt初始化为 \ntxt \nwhile True:# 循环读入行line fb.readline()# 如果是空则结束if not line:break# 有 // 舍去 // 后面的内容if line.find(//) ! -1:line line[: line.find(//)]# 将line剔除前后的空格和换行line line.strip()# 如果该行有#该行需要单独一行if line.find(#) ! -1:# 如果txt已经有换行则不需要再添否则需要添加换行if txt[-1] ! \n: txt \nline \ntxt line# 输出到 压行.cpp 文件内with open(file r压行.cpp, modew, encodingutf-8) as f:print(txt, filef)print(ok)
效果