python和C语言的差别

python和C语言的差别之前在公司一直做的是C语言的开发,然后做的都是业务方面的东西,做的是sdk,因为最近在找工作,然后今天面试的时候被问到C语言和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

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156011.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FVWM使用说明_fpv怎么使用

    FVWM使用说明_fpv怎么使用[环境设定]IconFontfontname将Icon的字形。此时Icon的字形应为fontname所指定者。IconPathpath指定xbm格式用来做为Icon用的图形档的路径所在。PixmapPathpath指定xpm格式用来做为彩色的Icon用的图形档所在的路径。ColormapFocus[followsmouse][follows

    2022年10月3日
    2
  • jenkins allure_Jenkins

    jenkins allure_Jenkins前言jenkins集成了allure插件,安装插件后运行pytest+allure的脚本即可在jenkins上查看allure报告了。allure安装在运行代码的服务器本机,我这里是用的dock

    2022年8月6日
    6
  • 基于stm32蓝牙智能小车设计

    基于stm32蓝牙智能小车设计前言:本文描述了一个由STM32微处理器、步进电机、蓝牙,L298N等模块构成的。该系统采用STM32微处理器为核心,在MDK环境下进行编程,通知控制L298N模块IN1~IN4引脚的高低电平进而控制电机的转动方向,使小车产生不同的转动模式。控制小车的转动模式通过蓝牙模块来实现,利用手机蓝牙助手和蓝牙模块相通,进而控制小车的各种运转模式。代码、蓝牙Androidapk地址:https://g…

    2022年10月18日
    4
  • 51单片机八路抢答器proteus仿真

    51单片机八路抢答器proteus仿真51单片机八路抢答器由于51单片机小板,按键比较少,还有一些功能上的缺陷,所以说无法完成八路抢答器,所以我们用proteus仿真,代码与实验结果如下:/********************************Function: 八路抢答器Date: Sep20,2017By:Third GroupBolancheL************

    2022年10月20日
    2
  • 编译成功了,运行为什么会失败_cython编译python

    编译成功了,运行为什么会失败_cython编译python编译caffe2遇到的坑最新的caffe2已经移到pytorch中去了,直接下载其中的代码然后按照官方教程就可以了。这里会遇到新的问题:make[3]:Enteringdirectory‘/home/ubuntu/caffe2-master/build’make[3]:Leavingdirectory‘/home/ubuntu/caffe2-master/build’…

    2025年6月23日
    7
  • sesvc.exe_alg是什么进程

    sesvc.exe_alg是什么进程今天公司的一台电脑一点右键就没有反应,通过任务管理发现每次启动都会有一个“Excel”进程,第一感觉就是中毒了,在网上找到了无暇解决方案杀毒方法:(切记:在操作过程中使用“右键->打开”,不可双击。)1.结束注册表中的fun.xls.exe的进程(建议选中fun.xls.exe->右键->转到进程,查找到“algsrvs.exe”单击它,再选择“…

    2022年10月3日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号