先学C语言好还是Python好呢?

火山八条矿


你好,六年软件开发经验来回答本行业问题。


我个人的技能栈比较杂,目前来讲C、C++、Python、Java、PHP、HTML、CSS、Oracle这些都有涉猎,有的精通,有的会用,而且都是做过实战项目的。如果说对我帮助最大的,还是C语言。从问题的描述看,你可能对C语言和Python的特点不太了解,下面我从个人理解的角度讲讲最好先学C语言的原因。

学习C语言,可以帮助你理解代码真正运行的原理

很多人说C语言难学,我刚开始学的时候也有着中国感觉,但是后来熟悉了,才发现C语言还是很优美的。确实,C语言是面向过程的语言,实现功能主要靠堆积一个个函数,在面向对象语言大行其道的今天,可能有人觉得C语言过时了。

实际上,通过学习C语言,你会懂得编译器是怎么回事,链接是怎么回事,动态链接和静态链接有什么区别,GCC调试怎么用,内存是怎么分配的,多线程怎么传递消息等等知识,这些都是C语言的魅力,一旦把这写知识啃下来,你对编程的认识就上了一个层次了。而其他语言,比如Java、Python,对编译链接这块知识都涉及甚少,你可能学了半天知道怎么用了,但是为什么有的语句运行效率差有的运行效率高你却不知道,相当于学了个浅尝辄止。

像腾讯、百度、阿里巴巴,他们要的人才,都是要懂这些知识的。因为他们运营的项目,比如淘宝、微信每天都有数亿次访问,那么怎么让服务器能承受这么多次访问而不宕机,以及如何优化现有的代码,让服务器更快的响应用户的请求都是他们要考虑的,这些都要懂底层的知识才能做到。

C语言是学习其他语言最好的跳板

学习的语言多了,你会发现,其实语言的语法部分各种语言都是大同小异,这其中C的语法是比较基础而且好懂的,像数组、队列、栈、数据类型等等都是跟其他语言互通的,学完了C,马上就可以无缝切换学习面向对象的C++,随后Python、JAVA、Javascript等等都向你展开了欢迎的怀抱,你会发现,原来语法相似的地方很多,而且上手很快,这就是C语言打下的底子。如果你到计算机专业的课程表里去看,多数学校都是把C语言排在第一学期首先学的。

Python语言的特点

Python是一种典型的面向对象的动态语言,其主要优点是跨平台,支持的软件包丰富,语言比较简洁、易读,所以近些年受到很多初学者的追捧,觉得随便学学就能实现很强大的功能,这点确实不可否认,但是偏实用性的特点是一把双刃剑,它使得开发者对底层机器的运行原理知之甚少。

先学习C语言的一个坏处

没错,上手有点慢,初期有点痛苦。其实,如果是编程新手的话,学习Python也一样要度过适应期,因为你要把自己的思维调整到编程语言的数据结构、数据类型里来。一旦度过适应期,你会发现C语言还是很优美的,知其然也知其所以然的快乐,会让你忘记之前的痛苦。

结束语

综上,如果你只是想多了解一些有趣的课外知识,那么Python是一个好的选择,如果你是想在编程这个行业深耕,那么我推荐你先学C语言,毕竟磨刀不误砍柴工,共勉。


科技民兵


先学C语言还是Python好呢?这个问题取决于自己学习的目的。目的决定了答案就有了,比如你是用来工作呢,还是随便找一门编程语言入门呢。


在讲结论之前我们有必要了解这两种语言的特点和应用领域:


1. C语言技术特点

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

(1)简洁的语言

(2)具有结构化的控制语句

(3)丰富的数据类型

(4)丰富的运算符

(5)可对物理地址进行直接操作

(6)代码具有较好的可移植性

(7)可生成高质量、目标代码执行效率高的程序


2. C语言应用领域

因为C语言具有高级语言的特点,又具有汇编语言的特点,所以可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。其应用范围极为广泛,不仅仅是在软件开发上,各类科研项目也都要用到C语言。下面列举了C语言一些常见的领域:

一:嵌入式设备开发。手机、PDA等时尚消费类电子产品相信大家都不陌生,其内部的应用软件、游戏等很多都是采用C语言进行嵌入式开发的。

二:应用软件。Linux操作系统中的应用软件都是使用C语言编写的,因此这样的应用软件安全性非常高。

三:服务器端开发:很多游戏或者互联网公司的后台服务器程序都是基于C++开发的,而且大部分是linux操作系统,所以说,你如果想做这样。

四:游戏软件开发。游戏大家更不陌生,很多人就是由玩游戏而熟悉了计算机。利用C语言可以开发很多游戏,比如推箱子、贪吃蛇等。

的工作,需要熟悉linux操作系统及其在上面的开发,熟悉数据库开发,精通网络编程。

五:对性能要求严格的领域。一般对性能有严格要求的地方都是用C语言编写的,比如网络程序的底层和网络服务器端底层、地图查询等。

六:系统软件和图形处理。C语言具有很强的绘图能力和可移植性,并且具备很强的数据处理能力,可以用来编写系统软件、制作动画、绘制二维图形和三维图形等。


C语言做电子设备的比较多,比如嵌入式行业就用的C语言,什么手机软件了,硬件驱动了,网络安全方面的也有,如防火墙之类的,还有现在比较流行的数字机顶盒,路由器,监控安防方面等等都用C语言开发的!


3. Python语言技术特点

Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。


4. Python语言应用领域

  • Web 和 Internet开发

  • 科学计算和统计

  • 人工智能

  • 桌面界面开发

  • 软件开发

  • 后端开发

  • 网络爬虫



5. 我的观点:

我们在了解C语言和Python语言的特点以及各自适用的领域就知道我们要学那个语言了,首先如果你先做专业程序员,那么你了解C语言是必须的,学会了C语言对你学习其它编程语言都大有好处。如果你没有编程基础或者图好玩更或者想了解编程世界,那么建议你学习Python,因为它更简单而且应用领域还比较多并且它的应用领域更加实用。从难度上来说C语言更难,而Python语言要比C简单很多。所以如果你不是一个专业程序员你就学Python,如果你是一个专业程序员那么C语言是一门必修课。


Java实用技术


整体比较

整体上来说,C语言学习难度更大一些,但是C语言是一门基础语言,学好C语言能为其它语言的学习打下良好的基础。Python是一种脚本语言,可以通过简短的代码实现非常复杂或者炫酷的功能,可以理解为一种封装非常好的语言,学完python后再学其它语言,其帮助不如C明显,但是当前一些流行的大数据、爬虫等都提供python接口,而对C的支持相对弱一些,因此如何选择需要根据自己的情况来判断。

以下是C和python的一些区别:

1.C语言是编译语言,没有对象的概念,如果延伸到C++则另说;Python是脚本语言,是面向对象的。

2.import和include

在C语言中使用那个库函数,需要引入头文件用include引入,而在python中需要引入别的模块或者函数时需要用import引入。

两者的不同机制是,C语言中include是告诉预处理器,这个include指定的文件的内容,要当作本地源文件出现过,而python中的import可以通过简单的import 导入。

3.全局变量方面

在C语言中,声明全局变量,如果值是恒定的,那么可以直接用#define声明,如果只是声明全局,并且变量的值是可变的,那么直接类似int a 就可以了,在python中,声明全局变量时,需要加上global,类似global a,在函数里面使用的时候需要先声明global a ,否则直接用a那么python会重新创建一个新的本地对象并将新的值赋值给他,原来的全局变量的值并不变化。


天码行空


有人觉得应该从C语言开始入门,原因如下:

1、C语言是你上大学第一门接触的编程语言,可见它的重要性。

2、C语言是一种面向过程的语言,而Python是一种面向对象的解释型计算机程序设计语言。而你需要先了解什么是面向过程,然后去了解什么是面向对象。

3、C语言是基础,可以这样说,如果你把C语言学透彻了,那你学其他的语言就简单多了,可谓是一通全通。

也有人觉得应该从python开始入门,原因如下:

1、如果使用C入门编程,能更好地掌握编程基础,理解代码运行原理,但是学习c比较枯燥,很难迅速见到成效,可能会打击学习的积极性。

2、使用python见效快,但是因为大部分使用高级接口,所以对底层实现方面可能就比较模糊,但是也可等学完python之后再学习C去补上。

3、现在国外教初学者编程都换python了,C是偏低层的,细节多,不易学。学python,你现在想做的东西,用python都可以很快很方便的实现。

C语言程序设计是我们的专业基础课,但是C语言本身却是一个非常强大的工具,它是到目前为止最为广泛使用的工具。

而Python 是一种通用的脚本开发语言,比其他编程语言更加简单、易学,其面向对象特性甚至比Java、C#、.NET更加彻底,因此非常适合快速开发。

据Apache 2018 年度报告显示,从项目使用的代码语言的分布来看,Java 第一,占所有项目的 58%,第二位是 C,第三位是 Python,第四位和第五位是 C++ 和 Javascript,两者差距不大。

总结下来就是:学C语言难而python简单,但是先学C语言能更好打基础





桥的那边


你好,做为超过10年的老程序员,觉得首先要看你是什么类型的人,还要你要用学到的C或者python 干什么工作

  • 对于大多数完全没有编程经验的人,强烈建议先学python
  • 因为python 开发环境容易安装,语法包简单
  • 解释性语言,无需编译,立马就能看到运行结果,容易提升自信心
  • 另外python适合爬虫,Ai 自动化运维等工作
  • 再学C语言,编译型,函数编程语言,同时系统性语言,需要学习数据结构,算法 编译系统make file
  • 适合编程操作系统嵌入式系统开发,结合arm Linux

最后 数据结构,算法,数学是所有开发语言的基

础,加油,


喜哥开口说


先学C语言还是Python?

非计算机专业的人,学习编程最重要的是保持住兴趣,而不是纠结技能树的问题。至于先学C语言还是Python,比较资深的程序员给出的

建议是:Python上手简单(当然语言本身还是没那么简单的),有交互性强的开发环境,还有众多的第三方库,学习起来乐趣会C/C++有

乐趣得多。

每个专业的程序员都应该学习,或者或多或少了解C。

但是C过于底层,强在内存操作,功能实现起来却十分复杂,并不适合作为上手语言。

另外,Python中有像Numpy、Scipy这样的科学计算库,以及Matplotlib这样的数据呈现库,从做研究的角度来讲,Python有潜质成为


01资源


先学哪个取决于你的个人专业与应用目标。如果你是计算机专业,未来从事软件开发就一定把C语言及算法、数据结构老老实实的学,咬牙也要学。编程语言没有高低贵贱,取决于应用场景。C语言是语言的语言,目前主流的编程语言java、python都是C语言开发出来的。因此掌握C语言C++对学习其他语言有非常大的好处。如果是非软件开发岗位,在自己本专业内需要用到编程技术,那么目前python是比较适合的。如果对编程没有一丁点的概念,用一周的时间学学少儿编程语言scratch也不是不可以。我做过国二国三的老师、后来做了十余年java职业培训。在大学也带过专业课,可以说见过太多的人在编程的前三次课就放弃了,因为编程在短期内见不到效果,找不到兴趣,坚持学下去非常痛苦,其实建立编程感觉并不难。建议如果编程感觉不强就去玩少儿编程一周。有感觉了再学习代码,想要短期内看到可视化的效果,学学python的turtle、pygame,如果是准备从事软件开发一定好好学C语言。


睿昕老爸


python和c先学哪个?首先,我们都知道,兴趣是好老师,所以培养起兴趣很重要。那么,更简单更容易掌握的就是Python啦。Python入门程序比较简单,在前期也比C容易学一些,后期会有面向对象之类的内容。

而有人觉得应该从C语言开始入门。原因如下:

1.C语言是你上大学第一门接触的编程语言,可见它的重要性。

2.C语言是一种面向过程的语言,而Python是一种面向对象的解释型计算机程序设计语言。而你需要先了解什么是面向过程,然后去了解什么是面向对象。

3.C语言的语法结构比较严谨,可以这样说,如果你把C语言学透彻了,那你学其他的语言就简单多了,可谓是一通全通。

Python的语法比较特别,都是靠空格去严格控制的,但是这对于刚接触编程的人员来说并不好,毕竟运用和Python一样语法的语言几乎没出现,所以你如果先掌握了它的语言语法,对你以后学习其他的语言会有影响。

其实,如果使用c入门编程,能更好地掌握编程基础,理解代码运行原理,但是学习c比较枯燥,很难迅速见到成效,可能会打击学习的积极性。

而使用python见效快,但是因为大部分使用高级接口,所以对底层实现方面可能就比较模糊,但是也可等学完python之后再学习c去补上。

所以我还是推荐python入门。但是,我觉得别人说的就是别人说的,还是自己实践才知道什么适合自己。


生于种花家何其荣幸


如果你是科班出身,建议先学C。

如果你半路出家,想直接用python,那就直接干!

主要有以下原因:

1、C语言是经典

C语言是比较原始,又比较经典的语言,直到现在,很多侧重高效率的系统或者软件依然还在用C语言,C语言里有指针等其他语言的没有的特性,对了解编程语言有很大的帮助。

2、python!

python算是较新的语言,其实也不新了,出来好多年了。python算是动态脚本语言,使用简洁方便,且函数库比较丰富,很多功能一个插件就可以解决。

所以,如果你是科班学生,建议多学学c,可以对整个编译有个更深的了解。

如果你只是简单的用用,可以直接学python,还有很多教程可以用,上手快。

如果你有其他问题可以在评论区留言,我们一起交流。


科技展览馆


本人是个程序猿,工作快10年都是用c/c++, 新人我的建议是学Python。 为什么我要推荐Python呢? 原因如下

1. 学习难度。 Python更容易学习, 能比较快掌握语法; 网上教程资料比较丰富而却系统性强。

2. 方便性。 Python 能一键安装大量库,轻轻松松实现各种强大的功能,网络爬虫,数据分析,表格处理,深度学习。而C语言要实现这些功能,对于一个新人来说,需要花费大量时间精力,可能要不成功。


分享到:


相關文章: