Day-03 基礎資料型別int, bool, str
一、Python基本資料型別
1.int ==> 整數 , 主要用來進行數學運算
2.str ==> 字串, 可以儲存少量資料並進行相應的操作
3.bool ==>布林值, 判斷真假Ture,False
4.list ==> 儲存大量資料,用[ ]表示
5.tuple ==> 元組, 不可以發生改變 用()表示
6.dic ==> 字典, 儲存鍵值對,一樣可以儲存大量資料
7.set ==> 集合, 儲存大量資料,不可以重複,其實就是不儲存value的dict
二、整數(int)
對於一個數字除了運算幾乎沒有其他操作。
只有一個:
bit_lenght() 計算當前這個數的二進位制長度, bit二進位制 lenght長度(實際上沒什麼用)
三、布林值(bool)
取值只有Ture,False。bool值沒有操作
轉換問題:x轉換成y型別 y(x)
str => int int(str)
int => str str(int)
int => bool bool(int) 0是False ,非0是True
bool => int int(bool) Ture是 1 , False是 0
str => bool bool(str) 空字串是False,不空是Ture
bool => str str(bool) 把bool值轉換成相應的“值”
結論:所有的空都是False,非空都是Ture
四、字串(str)
把字元連成串. 在python中用', ", ''', """引起來的內容被稱為字串.
字元:你能看到的單一文字元號
字串是一個不可變得資料型別
4.1 索引和切片
1.索引,索引就是下標,下標從0開始,程式設計師數數從0開始
s[索引] 獲取到字串s中的索引位置的資料
1 s1 = "python最牛B" 2 print(s1[0]) # 獲取第0個 3 print(s1[1]) 4 print(s1[2]) 5 print(s1[3]) 6 print(s1[4]) 7 print(s1[5]) 8 print(s1[6]) 9 print(s1[7]) 10 print(s1[8]) 11 # print(s1[9]) # 沒有9, 越界了. 會報錯 12 print(s1[-1]) # -1 表示倒數. 13 print(s1[-2]) # 倒數第⼆個
2.切片
語法:s[start: end: step]
從start開始到end結束。但是取不到end。 每step個取一個
s2 = "python最牛B" print(s2[0:3]) # 從0獲取到3. 不包含3. 結果: pyt print(s2[6:8]) # 結果 最⽜ print(s2[6:9]) # 最⼤是8. 但根據顧頭不顧腚, 想要取到8必須給9 print(s2[6:10]) # 如果右邊已經過了最⼤值. 相當於獲取到最後 print(s2[4:]) # 如果想獲取到最後. 那麼最後⼀個值可以不給. print(s2[-1:-5]) # 從-1 獲取到 -5 這樣是獲取不到任何結果的. 從-1向右數. 你怎麼數 也數不到-5 print(s2[-5:-1]) # ⽜b, 取到資料了. 但是. 顧頭不顧腚. 怎麼取最後⼀個呢? print(s2[-5:]) # 什麼都不寫就是最後了 print(s2[:-1]) # 這個是取到倒數第⼀個 print(s2[:]) # 原樣輸出
跳著擷取
# 跳著取, 步長 print(s2[1:5:2]) # 從第⼀個開始取, 取到第5個,每2個取1個, 結果: yh, 分析: 1:5=> ytho => yh print(s2[:5:2]) # 從頭開始到第五個. 每兩個取一個 print(s2[4::2]) # 從4開始取到最後. 每兩個取一個 print(s2[-5::2]) # 從-5取到最後.每兩個取一個 print(s2[-1:-5]) # -1:-5什麼都沒有. 因為是從左往右獲取的. print(s2[-1:-5:-1]) # 步長是-1. 這時就從右往左取值了 print(s2[-5::-3]) # 從倒數第5個開始. 到最開始. 每3個取一個, 結果oy
4.2 字串的相關操作
切記, 字串是不可變的物件, 所以任何操作對原字串是不會有任何影響的
1.upper() 全部轉換為大寫字母
2.strip() 去掉左右兩段的空白(空格,\n, \t)
3.replace(old, new) 字串的替換
4.split() 切割.得到的結果是一個列表
5.startswith() 判斷是否以xxx開頭
6.find() 查詢。如果找到了,返回索引。如果找不到,返回-1
7.index() 查詢。如果找到了,返回索引。如果找不到,報錯
8.len() 內建函式, 求字串長度
9.count() 查詢xxx出現的次數
.........
五、 迭代
語法:
for 變數 in 可迭代物件:
迴圈體(break,continue)
else:
語句塊
可迭代物件: 可以一個一個往外取值的物件
s19 = "大家好, 我是VUE, 前端的⼩朋友們. 你們好麼?" # 用while迴圈 index = 0 while index < len(s19): print(s19[index]) # 利用索引切片來完成字元的查詢 index = index + 1 # for迴圈, 把s19中的每一個字元拿出來賦值給前⾯的c for c in s19: print(c) ''' in有兩種⽤法: 1. 在for中. 是把每⼀個元素獲取到賦值給前面的變數. 2. 不在for中. 判斷xxx是否出現在str中. ''' print('VUE' in s19) # 練習, 計算在字串"I am sylar, I'm 14 years old, I have 2 dogs!" s20 = "I am sylar, I'm 14 years old, I have 2 dogs!" count = 0 for c in s20: if c.isdigit(): count = count + 1 print(count)