一、常量、變數和物件
1、常量:是指在程式的執行過程中不變的量。如:1,2,3,4,……,true、false
也有一些包含在模組中的用符號表示的常量,常用的如math模組中的pi和e,如:
>>>from math importsqrt,sin
>>>pi #
顯示3.141592653589793
>>>e #
顯示2.718281828459045
2、變數:指向物件的值的名稱就是變數。變數是乙個識別符號,通過等號(=)賦值運算建立,變數指向乙個物件。從變數到物件的連線成為引用(reference)。
等號(=)成為賦值運算子,a=5可以理解為把5賦給變數a。事實上,變數擁有自己的空間,變數連線到物件只是變數儲存了物件的單元的儲存位址,並沒有儲存物件的值。多個變數可以引用同乙個物件,乙個變數也可以引用不同的物件。引用不同的物件時,id也就不同了。
賦值運算可以使用「連等」,如:a=b=5+3 相當於:b=5+3,a=b.
1)python中的變數不需要宣告。隨時可以使用乙個符號,使用等號給它賦值,以後就可以使用這個符號代表那個值。
2)可以隨時賦不同型別的值。 變數通過賦值產生以後,可以隨時再賦其他的值,甚至後賦的值可以和以前的值有不同的型別。也就是說,後面的賦值和前面一點關係都沒有,就像新建立了乙個變數一樣。
例如:
a=12 #此後, a表示整數 12
a=1.2 #
此後,a 表示實數1.2
a="string"#
此後,a 表示一串字元「string」
3)可以使用乙個等號為多個變數賦值。如:
>>> x,y,z=10,20,30>>>x
10>>>y
20>>>z
30>>>
3、物件:python中一切皆物件。
寫出的資料1,2,3,使用的符號a,b,c,定義的函式sin(x)等等,都是物件。物件是某個型別事物的乙個具體的例項。
python中的每乙個物件都有乙個唯一的身份標識(identity,簡稱id)、一種型別和乙個值。物件的id是乙個整數,一旦建立就不再改變,可以把它當做物件在記憶體中的位址,使用id()函式可以獲得物件的id標識。例如:
>>> id(11)1521440656
>>> id("
anecdote")
61815168
物件的型別決定了物件支援的操作,也定義了物件的取值範圍。type()函式返回物件的型別。例如:
>>> type(12)'int
'>
>>> type(1.2)
'float
'>
>>> type("
object")
'str
'>
物件的型別也是不能改變的。
有些物件的值可以改變,稱為可變物件(mutable);有些物件的值一旦建立就不可再改變,稱為不可變物件(immutable)。python大部分物件是不可變物件,如數值物件、字串、元組等;字典、列表等是可變物件。
二、python的資料型別
分為:數字型別、序列型別、集合型別、字典型別等。
(一)數字型別
數字型別是指那些能進行算術運算、位運算和數學函式運算的資料型別,包括以下幾種:
1、整數型別(int):1,12
2、浮點型(float):3.14,9.03
3、複數型別(complex):3+5i
4、布林型(bool):true,false
5、其他數字型別:
1)decimal型別
2)分數型別
(二)序列型別:表示的是若干有序的資料,分不可變序列型別和可變序列型別
不可變序列型別的資料一旦寫定,其中的資料就不能再改變。此型別有:字串、元組和位元組序列。
可變序列型別的資料的內容可以更改。此型別有:列表、位元組陣列等。
1、字串(str):寫在一對單引號、雙引號或三單引號、三雙引號之間。
2、元組型別(tuple):在一對圓括號中,用逗號隔開的一組資料稱為乙個元組。元組表示任意型別的資料的序列,如(1,2,3)、('zhao','qian','sun','li')等。元組中的多個資料的型別可以不同,如(1,2,3,'one','two','three')等。
3、位元組序列(bytes)強調資料是一系列的位元組。生成的位元組序列是不可修改的。
4、列表:列在一對方括號中的用逗號隔開的若干資料是乙個列表。
5、位元組陣列(bytearray)表示可修改的位元組序列。生成的位元組序列是可修改的。
(三)其他型別
1、集合資料型別
~ 表示若干資料的集合,集合中的專案沒有順序,且不重複。
寫在一對大括號中的用逗號隔開的資料就是集合(set)資料,如。集合資料是可變的。
寫在frozenset()圓括號中的序列、集合變成不可變集合(frozenset)資料。
2、字典資料型別
~ 類似集合型別,字典中的每一項資料報括兩部分,乙個是鍵,乙個是值。例如:。鍵相當於乙個類別的名字
3、python一切皆有型別
python中的一切事物都屬於乙個資料型別,如模組、類、物件、函式等都屬於某一類事物。每類事物都有它們的特徵,這就是它們的型。像模組型別、type型別、物件型別、可呼叫資料型別(如一切可呼叫的函式、方法等)等。
資料的型別可以使用內建函式type()來檢視,例如:
>>> type(12)'int
'>
>>> type(1.2)
'float
'>
>>> type("
object")
'str
'>
>>> type(1.2j)
'complex
'>
>>> type([1,2,3])
'list
'>
>>>
BCD資料表示
2.13 bcd資料表示 雖然整數和浮點格式已經可以滿足一般程式的資料表示需求,但是在一些特殊的情況下,其他的數字表示方式更加方便一些。在本節中,我們將對二進位制編碼的十進位制 bcd 格式進行討論,因為80x86 cpu為這種資料表示方式提供了少量的硬體支援。bcd數值是由一些半位元組組成的序列,...
Struts Hibernate資料表示
在 struts hibernate 這種結構中,是不應該把hibernate產生的po直接傳遞給jsp的,不管他是iterator,還是list,這是乙個設計錯誤。我來談談在j2ee架構中各層的資料表示方法 web層的資料表示是formbean,資料 於html form post 業務層的資料表...
MALLET中的資料表示
1。an instance contains four generic fields of predefined name data target name and source data holds the data represented by the instance,target is of...