python和C语言的差别
之前在公司一直做的是C语言的开发,然后做的都是业务方面的东西,做的是sdk,因为最近在找工作,然后今天面试的时候被问到C语言和Python的区别,自己只是简单的说了C是静态语言,在变量在使用前进行声明,而Python是动态语言,在使用的时候可以直接使用,不需要声明,C里面没有对象,而Python里面是有对象。现在想想,C语言在运行的时候是需要编译然后运行,而Python是直接run的。
查了查博客:
1.C语言是编译语言,Python是脚本语言。说是C语言会比Python快
(看了看学校oj最简单的A+B问题,C语言的运行事件大致在0ms,而Python是6、7、8、9、10ms都有)
2.list和数组
C语言中的数组,里面的都是数字,而list中可以包含很多不同的数据元素。
2.import和include
在C语言中使用那个库函数,需要引入头文件用include引入,而在python中需要引入别的模块或者函数时需要用import引入。
两者的不同机制是,C语言中include是告诉预处理器,这个include指定的文件的内容,要当作本地源文件出现过,而python中的import可以通过简单的import 导入,或者是 import numpy as np
3.全局变量方面
在C语言中,声明全局变量,如果值是恒定的,那么可以直接用#define声明,如果只是声明全局,并且变量的值是可变的,那么直接类似int a 就可以了,在python中,声明全局变量时,需要加上global,类似global a,在函数里面使用的时候需要先声明global a ,否则直接用a那么python会重新创建一个新的本地对象并将新的值赋值给他,原来的全局变量的值并不变化
比如
global a
a = 3
def func():
a = 4
print(a) func()
print(a) 运行结果:
4
3
而这段代码
global a
a = 3
def func():
global a
a = 4
print(a) func()
print(a)
运行结果
4
4
python和C语言的差别的更多相关文章
- python与其它语言进行比較
近期python语言貌似比較火, 今天闲来无事,简单的看了下,算是个入门吧.一门语言之所以值得这么多人去学,必然有它的独到之处,以下我们就用python和其它语言做个比較. Pythond VS C# ...
- python和C语言混编的几种方式
Python这些年风头一直很盛,占据了很多领域的位置,Web.大数据.人工智能.运维均有它的身影,甚至图形界面做的也很顺,乃至full-stack这个词语刚出来的时候,似乎就是为了描述它. Pytho ...
- 基于Spark环境对比Python和Scala语言利弊
在数据挖掘中,Python和Scala语言都是极受欢迎的,本文总结两种语言在Spark环境各自特点. 本文翻译自 https://www.dezyre.com/article/Scala-vs-Py ...
- 建议3---理解Python与C语言的不同之处
我们都知道,Python的底层是用C语言实现的,但切忌用C语言的思维和风格来编写Python代码.Python与其他语言有很多不同,以下来进行简单的分析: (1)"缩进"与“{}” ...
- 比较分析C++、Java、Python、R语言的面向对象特征,这些特征如何实现的?有什么相同点?
一门课的课后题答案,在这里备份一下: 面向对象程序设计语言 – 比较分析C++.Java.Python.R语言的面向对象特征,这些特征如何实现的?有什么相同点? C++ 语言的面向对象特征: 对象模 ...
- python是c语言开发的
python是c语言开发的. #c语言,没有字符串:字符串使用字符组表现 hello —五个字符 字符数组 [’h’,’e’,…’o’] 所以python中如果对一个字符串进行修改,就是在内存 ...
- python和C语言互相调用的几种方式
? 1 2 3 4 5 6 7 8 9 版权申明:本文为博主窗户(Colin Cai)原创,欢迎转帖.如要转贴,必须注明原文网址 http://www.cnblogs.com/Colin-Cai/ ...
- python与其他语言的区别
C 和 Python.Java.C#等 C语言: 代码编译得到 机器码 ,机器码在处理器上直接执行,每一条指令控制CPU工作 其他语言: 代码编译得到 字节码 ,虚拟机执行字节码并转换成机器码再后在处 ...
- python与c语言交互应用实例
1.python向c语言写数据 1) 先将接收端编译成一个共享链接库gcc/arm-linux-gnueabihf-gcc -o bluetooth_proxy.so -shared -fPIC bl ...
随机推荐
- BZOJ2743:[HEOI2012]采花——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=2743 萧薰儿是古国的公主,平时的一大爱好是采花. 今天天气晴朗,阳光明媚,公主清晨便去了皇宫中新建 ...
- php+memcached缓存技术实例
一.memcached 简介 在很多场合,我们都会听到 memcached 这个名字,但很多同学只是听过,并没有用过或实际了解过,只知道它是一个很不错的东东.这里简单介绍一下,memcached 是高 ...
- 【CF Gym100228】Graph of Inversions
Portal --> qwq(貌似是CodeForces Gym 100228 (ECNA2003) - I) Description 对于长度为 \(n\) 的序列 \(A\) ,定义其逆序图 ...
- 【HEOI 2018】制胡窜
转载请注明出处:http://www.cnblogs.com/TSHugh/p/8779709.html YJQ的题解把思路介绍得很明白,只不过有些细节说得还是太笼统了(不过正经的题解就应该这个样子吧 ...
- 如何设置eclipse格式化xml代码时不自动换行
如何设置eclipse格式化代码时不自动换行 2015年12月23日 09:08:36 qq_20889581 阅读数:3770 标签: eclipse格式化android 更多 个人分类: Ecli ...
- Java国密相关算法(bouncycastle)
公用类算法: PCIKeyPair.java /** * @Author: dzy * @Date: 2018/9/27 14:18 * @Describe: 公私钥对 */ @Data @AllAr ...
- Spring MVC @ModelAttribute详解
被@ModelAttribute注释的方法会在此controller每个方法执行前被执行,因此对于一个controller映射多个URL的用法来说,要谨慎使用. 我们编写控制器代码时,会将保存方法独立 ...
- 玲珑学院oj 1152 概率dp
1152 - Expected value of the expression Time Limit:2s Memory Limit:128MByte Submissions:128Solved:63 ...
- Struts2-从值栈中获取数据-EL表达式从值栈获取
从值栈获取数据 1 使用struts2的标签+ognl表达式获取值栈数据 (1)<s:property value=”ognl表达式”/> 获取字符串
- Why are Eight Bits Enough for Deep Neural Networks?
Why are Eight Bits Enough for Deep Neural Networks? Deep learning is a very weird technology. It evo ...