c与python哪个简单_Python与C的简单比较(Python3.0)

news/2025/2/25 19:06:57

Python可以说是目前最火的语言之一了,人工智能的兴起让Python一夜之间变得家喻户晓,Python号称目前最最简单易学的语言,现在有不少高校开始将Python作为大一新生的入门语言。本萌新也刚开始接触Python,发现Python与其他语言确实有很大的区别。Python是由C语言实现的,因此想把Python与C语言做一个简单的比较。

1.C语言是编译型语言,经过编译后,生成机器码,然后再运行,执行速度快,不能跨平台,一般用于操作系统,驱动等底层开发。

Python是编译型还是解释型这个界限并不明显,但大致上可以理解为解释型语言,执行速度慢,由于Python虚拟机,Python是可以跨平台的,Python高度集成适合于软件的快速开发。

2.C语言的数据类型如下图:

20180111005912593769.png

C语言中需要事先定义变量类型,以int类型为例,当定义一个int型变量后,就会在内存中开辟4个字节,再来进行初始化,由于长度是指定的,在运算过程中需要考虑,溢出,精度等问题。

Python中的数据类型:

1.Number:数字

Int

Float

Bool

Complex

2.String:字符串

3.List:列表

4.Tupel:元组

5.Sets:集合

6.Dictionary:字典

Python不需要事先定义变量类型,以a=3为例,在内存中存放一个整数3,然后再用变量a指向3,变量a是没有类型的,我们所说的类型是指变量所指的内存中对象的类型。

从数据类型上就可以看出Python的友好性,基本数据类型变少了,没有烦人的指针,不需要考虑数据溢出和精度的问题,当在程序中需要使用某个变量时,就能够直接使用,而不需要在程序开头定义变量。除此之外,Python还提供了str,list,dict这些强大的数据类型,让程序开发变的更为简单。

3.Python还提供了一个交互界面,输入python进入交互界面,输入exit()退出交互界面,类似于Linux终端,输入一行命令,执行一行,为学习Python提供了很大的便利。

4.在运算符和优先级上面,两者并没有大的区别,但在python中没有自加和自减运算符,在逻辑运算符上Python也区别于C语言,Python中是and,or,not ,而C语言中则是&&,||,!

5.Python中通过缩进来表示语句体,C语言通过{}来表示语句体,并且在Python中每一条语句结尾后没有分号,判断语句if else,这两者没有区别,循环语句while也没有,只是for循环,Python通过for in来表示

6.Python有很多内置函数(build in function),不需要写头文件,Python还有很多强大的模块,需要时导入便可。C语言在这一点上远不及Python,大多时候都需要自己手动实现。

7.C语言中的函数,有着严格的顺序限制,如果要调用函数,该函数需要在本次调用之前就需要被实现,或者在程序开头事先声明,而Python中则没有这个限制,Python中还有高阶函数这一概念,即函数名也可当作函数参数,函数名也是一种变量,指向内存中的某个函数,这种写法可以大大减少代码长度。

8.C语言是面向过程的语言,很多时候都需要自己手动实现函数来完成某一功能。Python中引入了类和对象,是面向对象编程的语言,面向对象使得代码的可重用性大大提高,数据的封装性也更好。

总结:Python可以说是非常`简单`的语言,高度集成,代码量少,简单是相对其他语言而言。编程从来都不是一个简单活,需要我们不断学习,掌握底层实现原理,才是正道。

原文地址:http://www.cnblogs.com/mlgjb/p/7892130.html


http://www.niftyadmin.cn/n/2219411.html

相关文章

Java中自定义异常的使用

Java中的自定义异常的使用步骤&#xff1a; 1.定义异常&#xff0c;并继承Exception&#xff0c;分别构造无参函数和有参构造函数&#xff0c;并在构造函数中分别调用父类的无参构造函数和有参构造函数 <span style"font-size:18px;">package com.bluesky;pub…

服务器管理Linux经典命令

1.站点根目录下查找是否被放置webshell***根据语句判断是不是PHP***脚本 # find /storage/www/ -name "*.php" | xargs grep -in --color "eval(" # grep -i --include*.php -r system\s*\( /storage/www/ 2.统计访问日志中来自同ip出现的次数分析盗链、**…

Java中应用Collections工具类的Sort()方法对List进行排序

一、Sort排序方法的使用&#xff1a; 1.对Integer类型进行排序 (该类型已经实现Comparable接口) 2.对String类类型进行排序 (该类型已经实现Comparable接口) 3.对其他类型进行排序 (需要自己实现Comparable接口) 二、Comparable接口和Comparator接口的比较&am…

make的常见错误信息

本文对make执行时可能出现常见错误进行汇总、分析&#xff0c;并给出修正的可能方法。 make执行过程中所产生错误并不都是致命的&#xff1b;特别是在命令行之前存在“-”、或者make使用“-k”选项执行时。make执行过程的致命错误都带有前缀字符串“***”。 错误信息都有前缀&a…

Java中文件的拷贝

一、字节流的基本知识&#xff1a; 1.输入流&#xff1a;InputStream &#xff08;in &#xff09; 输出流&#xff1a;OutputStream &#xff08;out&#xff09; 2.输入流的基本方法&#xff1a; *int b in.read(); //读取一个字节 *…

replace into .. ON DUPLICATE KEY更新多行记录

如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE&#xff0c;并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值&#xff0c;则执行旧行UPDATE&#xff1b;如果不会导致唯一值列重复的问题&#xff0c;则插入新行。例如&#xff0c;如果列a被定义为UNIQUE&…

Java中的UDP编程

一、UDP编程特点&#xff1a; 1、无连接&#xff0c;不可靠&#xff0c;无序的&#xff1b; 2、UDP协议以数据报作为传输媒体&#xff1b; 进行数据传输时&#xff0c;首先需要将要传输的数据定义成数据报Datagram&#xff0c;在数据报中指明所要到达的Socket&#xff0c;即 …

Java小程序之桌球动起来!

亲爱的小伙伴们&#xff0c;最近好久都没有更新博客了&#xff01;因为我在忙着学MySQL数据库去了&#xff01; 经过一段时间的钻研&#xff0c;终于学完了MySQL数据库的基础知识&#xff0c;现在回归到Java&#xff0c;会慢慢结合数据库写一些小东西&#xff0c;敬请期待&…