c语言 与 python语言 不可告人的秘密

时过境迁_ 发布于 2012/08/10 09:53
阅读 4K+
收藏 0

为什么很多国外的开源软件中是用c或c++写的核心代码,而用python写的测试代码。

是不是python脚本语言有利于c/c++的测试?

能否举例说明下?

加载中
0
helloworld_go
helloworld_go

python脚本表现能力强大,丰富的类库,人性化的语言,

写测试的确非常方便。

举例说明直接随便找本python的书,看里面的小例子,试试用c++写写,人家都测试好了,估计c++还没调试好。

helloworld_go
helloworld_go
回复 @Lunar_Lin : c++写得更快,估计也比不上python的神速。
helloworld_go
helloworld_go
回复 @Lunar_Lin : python的调试和c++的调试难度不是一个级别上的。
Lunar_Lin
Lunar_Lin
不能这么说的。。python不也一样要调试,一样的语法严谨。C++不在乎效率的话,可以写的非常神速。。主要是学习时间差距太大。
0
helloworld_go
helloworld_go
http://blog.csdn.net/lgfei/article/details/92044
0
张伯函
张伯函
应该是用Python写实现,核心(需要效率的)用C或C++重写一下吧
0
Lunar_Lin
Lunar_Lin

引用来自“helloworld_go”的答案

http://blog.csdn.net/lgfei/article/details/92044

C++版本
/*std boost头文件*/
int main()
{
  fstream f("123.txt");
      string line;  map<string,string> lines;//要从大到下的话,模板增加个greator参数
      vector<string> v;
      while(getline(f,line,'\n')
     {
         splite(v,line,is_any_of("\t"),token_compress_on);
         lines[v[0]]=v[1];//按第2行排序的话,就lines[v[1]]=v[0];
    }
     typedef pair<string,string> pp;
     foreach(pp &  line, lines)
    {
           cout<<line.first<<"  "<<line.second<<endl;
     }
     return 0;
}

Yisen
Yisen
回复 @Lunar_Lin : 难道你用c++不缩进吗?python一样的缩进,都是tab,谁用空格了。而且缩进方法跟你上面的一样,把大括号去掉就好了,哪来的困扰
helloworld_go
helloworld_go
回复 @$_$ : 厉害啊,python的语法还是好强大的。
deleted
deleted
来个一行版.... open("new.txt","wb").writelines('\t'.join(line)+"\n" for line in sorted( [ line.split() for line in open('old.txt') ],lambda x,y:cmp(int(x[0]), int(y[0]))) )
Lunar_Lin
Lunar_Lin
回复 @helloworld_go : 呵呵。好啦。我只是开个玩笑。不过确实不少人被python的缩进 很折磨过。。 上班上班~~~
helloworld_go
helloworld_go
回复 @Lunar_Lin : 好的,那我们假设他输代码的速度不如你快。 不过要是我,要是没有va帮我输这段c++代码,我得输很久很久。
下一页
0
deleted
deleted
python整合c属于强项了, 比如自带的ctypes和第三方的ffi库, 可以直接调用c写的so/dll,  第三方的cython(原pyrex)可以混写python+c/c++.....
0
helloworld_go
helloworld_go
swig,boost.python写python扩展也很轻松容易。
0
中山野鬼
中山野鬼
python +C 我认为还是应该很强的。虽然一直没时间摸python。哈。
0
马太航
马太航
lua + c/c++
0
泡不烂的凉粉
泡不烂的凉粉

个人愚见。 需要依靠缩进区分语法结构的代码,太含蓄了。不喜欢。PYTHON

一些简单的东西一大堆东西才能实现。

helloworld_go
helloworld_go
那些难实现的可以用c++,c来实现。
0
桉尚
桉尚
python的实现好像也是用的C/C++吧?
返回顶部
顶部