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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM