鹹魚micropython入門—數據類型
MicroPython中基本的數據類型有Number(數字)、String(字符串)、List(列表)、Tuple(元組)、Dictionary(字典)等。
用type()可以查看變量和常量的數據類型。
Number(數字)
MicroPython支持 int、float、bool、complex(複數)。
當定義一個變量時,Number 對象被創建。 創建的Number對象,可以通過del語句進行刪除。
a = 3
del a
注意:
1、可以同時爲多個變量賦值,如a, b = 1, 2。
2、數值的除法(/)總是返回一個浮點數,如1/1,結果爲1.0。
3、在混合計算時,MicroPython會把整型轉換成爲浮點型
int(整型)
MicroPython可以處理任意大小的整數(包括負整數),整數的表示方法和數學上的寫法一樣,如
1,100,-8080,0 ,……
MicroPython中用十六進制表示整數,如下
0xff00,0xa5b3c3d2,……
float(浮點型)
浮點數就是小數。按科學計數法表示時,浮點數的小數點是可變的,如1.23×109和12.3×108是相等的。可以把10用e替代,1.23×10^9就是1.23e9,或是12.3e8,0.000012可以寫成1.2e-5。
示例:
浮點數和整數在計算機內部存儲方式不同,整數是精確的,而浮點數運算時會有四捨五入的誤差。
bool(布爾型)
布爾值只有True、False兩種值,非True則False,注意大小寫
示例:
上述示例中while爲一個循環語句,當flag爲True時,循環執行後面的語句,if爲一個判斷語句,當num=0成立時,執行下面的語句。
complex(複數)
複數由實數部分和虛數部分構成,可以用a + bj,或者complex(a, b)表示, 複數的實部 a 和虛部 b 都可以是浮點型。
示例:
數字類型轉換
有時候,我們需要對數據內置的類型進行轉換,具體如下
int(x): 將x轉換爲一個整數。
float(x): 將x轉換到一個浮點數。
complex(x):將x轉換到一個複數,實數部分爲 x,虛數部分爲 0。 > complex(x, y) :將 x 和 y 轉換到一個複數,實數部分爲x,虛數部分爲 y。x 和 y 是數字表達式。
String(字符串)
字符串是以"或’括起來的任意文本(如’abc’,“xyz”)。
注意:
" 或 ’ 本身只是一種表示方式,不是字符串的一部分。因此,字符串’abc’只有a,b,c這三個字符。
示例:
訪問子字符串,可以使用方括號來截取字符串。
可以截取字符串的一部分並與其他字符串拼接。
List(列表)
列表(list)是MicroPython中最基本的數據結構。列表中的每個元素都分配一個索引,第一個索引是0,第二個是1,依次類推。
在MicroPython中定義列表需要使用方括號,列表中的數據項都包含在方括號中,數據項之間使用逗號分隔。
創建列表
- 列表中的數據可以是任意數據類型,甚至可以是不同類型的混合。
示例:
- 列表中的數據除了基本的數據類型,還可以是其他複雜的數據結構。
示例:
操作列表
列表創建完成後,可以進行訪問、修改、刪除、插入等操作,即列表是可變的數據類型。
- 訪問列表中的值
使用下標索引來訪問列表中的值,同樣也可以使用方括號的形式截取字符。
示例:
- 修改列表項
可以對列表的數據項進行修改。
示例:
- 刪除列表中的元素
可以使用del或pop()函數來刪除列表中指定位置的元素。
示例:
- 在某一位置插入元素
用 insert(i, x) 函數在位置 i 處插入元素 x,原來 i 位置及其後的元素依次後移,也可以使用append()方法在末尾添加元素。
示例:
- MicroPython列表腳本操作符
MicroPython表達式 | 結果 | 描述 |
---|---|---|
len([1,2,3]) | 3 | 列表元素個數 |
[1,2,3]+[4,5,6] | [1,2,3,4,5,6]多個列表組合成一個列表 | |
[‘ye!’]* 3 | [‘ye!’,‘ye!’,‘ye!’]重複若干個元素組成列表 | |
3 in [1,2,3] | True | 判斷元素是否存在於列表中 |
MicroPython列表操作的函數和方法
-
列表操作包含以下函數:
1、cmp(list1, list2):比較兩個列表的元素
2、len(list):返回列表元素個數
3、max(list):返回列表元素最大值
4、min(list):返回列表元素最小值
5、list(seq):將元組轉換爲列表 -
列表操作包含以下方法:
1、list.append(obj):在列表末尾添加新的對象
2、list.count(obj):統計某個元素在列表中出現的次數
3、list.extend(seq):在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)
4、list.index(obj):從列表中找出某個值第一個匹配項的索引位置
5、list.insert(index, obj):將對象插入列表
6、list.pop(obj=list[-1]):移除列表中的一個元素(默認最後一個元素),並且返回該元素的值
7、list.remove(obj):移除列表中某個值的第一個匹配項
8、list.reverse():反向列表中元素
9、list.sort([func]):對原列表進行排序
Tuple(元組)
元組(tuple)和列表十分類似,只是元組和字符串一樣是不可變的,即不能修改元組。正是由於元組不可變,一般用於MicroPython中定義一組不需要改變的值。
在MicroPython中定義元組使用圓括號,元組中的項目同樣使用逗號分隔。
示例:
空的元組由一對空的圓括號組成,比如t=()
注意: 定義只有1個元素的元組時,必須要在這個元素後面跟一個逗號。
示例:
Dictionary(字典)
字典(dict)這種數據結構類似通訊錄,有一個名字和名字對應的信息,可以通過名字查找對應的信息,在字典中名字叫‘鍵’,對應的內容叫‘值’。字典就是一個鍵/值對(key/value)的集合。
在MicroPython中定義字典使用花括號,字典中的鍵/值對之間使用逗號分隔,鍵和值之間用冒號分隔。
示例:
操作字典
- 把數據放入dict
可以直接對單個鍵賦值的方法來將數據放入字典。
- 由於一個key只對應一個value,所以,多次對一個key放入value,後面的值會把前面的值覆蓋。
- 刪除鍵/值對
用pop(key)的方法刪除一個鍵值對,對應的value也會從dict中刪除。