C语言文件和Python文件的格式有哪些异同呢?
在C语言文件中,开头通常都有标准库文件#include<stdlib>和标准输入输出文件#include<stdio>,而Python自带这些功能,没必要import额外的库。
C语言对括号也情有独钟。圆括号( )表示条件,其结果是一个真值。花括号{ }表示进程,里面是待执行的代码块。而Python仅仅用 : 就表示了逻辑判断,用缩进表示执行,相比之下更简洁美观。

C语言的函数和Python函数不仅写法不一样,用法也有巨大差异,怎么改?
C语言的输入有scanf ,getchar,而在Python中几乎找不到这样的函数。
不过Python的输入函数 input 在C中有很好的替代品——gets( ),它们之间可以转换。
在输出函数上,Python和C保持了高度一致,Python的 print 可以完美涵盖C的 printf 。因此,输出函数不是问题。

总的来说,如果不涉及库的使用,仅仅在算法上使用Python,那么Py文件是很容易转成Cpp的。编程语言本就大同小异,而其中的算法思想又始终如一。基于这个原理。我编写了一个可以将Py文件转成Cpp的程序。
笔者对Python更加熟悉,而且Python作为一门简洁高效的语言更适合个人开发,因此我选用Python来写这个程序。
Python读取双文件十分简单。用readline()逐行读取,之所以不用read()是为了方便逐行操作,而不用readlines()是考虑到当文件太大时,内存会塞不下导致电脑崩溃。
1 with open("Py.txt","r",encoding="utf-8") as f , \ 2 open("toC.txt","a") as c : 3 l=f.readline() 4 while l: 5 pass 6 l=f.readline()
之后就要解决问题了
句末
Python换行就表示句末了,分号 ; 可加可不加。但是C语言句末必须有 ; 因此Py文件中每次检测到换行" \n "就要在此前添加 ;
1 if l[-1] == "\n": 2 l=l[:-1]+";\n"
注释
Python用 # 表示注释,而C用 //
1 #注释 2 if "#"in l: 3 if l[0]=="#": 4 l=l.replace("#","//") 5 else: 6 l=l.replace("#","; //")
大括号
Python一般4个空格为一个缩进,缩进增加表示进入执行进程。对应的,C语言要用 { 表示进程。因此靠缩进就可以智能地添加花括号
1 s="" 2 #大括号 3 if count>space: 4 #缩进增加 { 5 l=(count-1)*" "+"{\n"+l 6 space=count 7 else: 8 #缩进减少 } 9 while space-count: 10 s+=(space-1)*" "+"}\n" 11 space-=1 12 l=s+l
当然Py和Cpp的区别远不止这些。翻译工作也没这么简单。怎么解决请看后文。