C#实际上风格是类似java的,可以说的c++和java的结合体,做windows平台下应用,或者asp.net都挺好,但是仅限于windows,不能跨平台。python所有平台通用,一个python代码基本上可以不改在三种操作系统上用,除了调某系统特有api时不行,python适合写工具,比如爬虫,扫描器,做运维,游戏后台,现在的flask和django框架做web后台也不错,python还有一个重要应用在科学计算,比如机器学习,数据挖掘。python的代码简洁,但是速度慢,存在全局锁并发会有些麻烦,c#代码量大,但是速度快不少,作为编译型语言并发较容易。
Python是一种跨平台语言。无论是在Windows、Linux、Unix还是Mac
Os系统,我们都可以使用Python。甚至在Linux、Unix及Mac
OS系统内已经集成了Python。语法简洁优美、简单、易学,拥有强大的标准库及第三方库,且Python的使用范围极广。
C#是微软公司推出的一种功能强大的高级编程语言,能够迅速、高效地完成Windows平台上的项目开发,被称为未来语言!
Python和C#语言都是功能强大的有前途的编程语言,那么两者有什么区别呢?
1.Python原本就被设计成类似用英语表达一样,所以语法简单,没有句法括号和大量的修饰词,易读易学;而C#必须遵循一定的规则,伴随着很多修饰词,还得将代码段放在括号内;
2.在编写脚本方面,Python的脚本是真正的脚本,能够被解释器执行,而且使用Python更容易编写跨平台的脚本,甚至不需要重新编译;
3.程序的运行生命周期可以分为编译时、链接时、加载时、运行时,这4个阶段。在Python中,这4个阶段是一体的,而在C#中却是严格分离的,在C#要想跨阶段执行则就需要用到反射。这就造成了两者之间具有很大的不同;
4.Python可以实现类型之间的快速切换,而C#却需要通过相应的类型转换才能实现;
5.Python无法做静态类型检查,而C#却会进行静态类型检查;
6.Python没有访问修饰符,而C#有public、private、internal、protected、protected
internal等的访问修饰符;
7.Python没有interface,其只能类继承,同时其还支持多继承,而C#只能单继承,一个类只能继承一个类,当然C#为了弥补单继承的不足,还带来了interface,一个类可以继承多个interface;
8.Python没有泛型,或者说不需要泛型,而C#却有泛型。
c#跨平台性能相对较好,自从.net core的推出,C#可以跑在安卓,IOS,linux,unix,win7,win8,win10,wp,sp,嵌入式,单片机等各种系统上,而且运行效率相对较高,python只能跑在Windows和Linux上,平台有所局限,运行效率相对较低。
C#语法较为复杂,涉及到指针,函数指针,事件,泛型函数指针,多线程等较为复杂的内容,而python语法清晰,语言简单易学
C#有.net core和framework两套API,有mono和CLR两种虚拟机,不仅可以解释运行,而且可以通过native编译技术实现直接编译为机器码运行。python不仅有传统的py还有Ipy,pypy,cpy等多种实现
C# 是能跨平台的