首頁  >  文章  >  後端開發  >  Python直和c區別

Python直和c區別

silencement
silencement原創
2019-06-20 15:27:432898瀏覽

Python直和c區別

python與C的差異如下

1、語言類型不同。

Python是一種動態型別語言,又是強型別語言。它們確定一個變數的類型是在您第一次給它賦值的時候。 C 是靜態型別語言,一種在編譯期間就決定資料型別的語言。大多數靜態類型語言是透過要求在使用任一變數之前聲明其資料類型來保證這一點的。

2、物件機制不同。

Python中所有的數據,都是由對像或對象之間的關係表示的,函數是對象,字串是對象,每個東西都是對象的概念。每一個物件都有三種屬性: 實體,類型和值。

C中沒有物件這個概念,只有“資料的表示”,比如說,如果有兩個int變數a和b,想比較大小,可以用a == b來判斷,但是如果是兩個字串變數a和b,就不得不用strcmp來比較了,因為此時,a和b本質上是指向字串的指針,如果直接用==比較, 那比較的實際是指針中存儲的值地址。

3、變數型別不同。

python六個標準的資料型態:Number數字、String字串、List列表、Tuple元祖、Sets集合、Dictionary字典,數字型別有四種:整數、布林型、浮點數、複數。 C語言也可分為四類:基本型別、枚舉型別、void的型別、衍生型別。基本型別:整數型、浮點型別。

4、函數庫的使用方法不同。

在C語言中使用那個函式庫函數,需要引入頭檔用include引入,而python需要引入別的模組或函數時需要用import來引入。

兩者的不同機制是C語言中include是告訴預處理器,這個include指定的檔案的內容,要當作本地原始檔出現過,而python中的import可以透過簡單的import 導入,或是import numpy as np 。

5、全域變數不同。

在C語言中,聲明全域變量,如果值是恆定的,那麼可以直接用#define聲明,如果只是聲明全局,並且變量的值是可變的,那麼直接類似int a 就可以了。

在python中,宣告全域變數時,需要加上global,類似global a,在函數裡面使用的時候需要先宣告global a ,否則直接用a那麼python會重新建立一個新的本地對象並將新的值賦值給他,原來的全域變數的值並不改變。

以上是Python直和c區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn