1. 基本數據類型概況java
① int 整數
② str 字符串
③ bool 布爾值
④ list 列表. 通常存放大量的數據 ["門神xxxx", "風扇哥xxxx", 元素]
⑤ tuple 元組. 只讀列表, 只能看啥也不能幹. (元素, 元素)
⑥ dict 字典. {"風扇哥":"王偉哲", "wlh": "王力宏"}
⑦ set 集合 {"風扇哥", "wlh"}. 不重複
⑧bytes 一堆字節. 最小數據單元python
2. int類型的相關操做.git
數字沒辦法執行其餘操做. 操做只有+-*/, //, %, **
8bit => 1byte
bit_length() 二進制長度程序員
3. bool類型的操做. 基本類型轉換的問題函數
bool類型沒有操做.
類型轉換區塊鏈
a = 10 print(type(a)) # <class 'int'> d = str(a) # 把數字轉換成str print(type(d)) # <class 'str'>
結論一: 想把xxx轉化成yy類型. yy(xxx)
結論二: 可以表示False的數據: 0, "", [], {}, set(), tuple(), None, False大數據
4. str 認識字符串(重點, 多)
字符: 單一的文字符號
字符按照固定的順序連成串
被' 或者" 或者''' 或者"""括起來的內容
索引 編號, 順序
從0開始spa
切片code
[start: end] 顧頭不顧尾 end取不到 s = "中間的,大家爲何不說話.難受" print(s[3:7]) # ,大家爲 print(s[5:9]) # 們爲何 print(s[-3: -7]) # 切不到東西, 默認是從左往右切 print(s[-7: -3]) # 麼不說話 print(s[:6]) # 從頭開始切 print(s[6:]) # 切到末尾 print(s[:]) # 從開始到結束
s[start:end:step]
start:開始
end: 結束 取不到02
step: 步長, 控制方向. 每xx個取一個orm
5.字符串相關操做
驗證碼
verifyCode = "aEmn" veri = input("請輸入你的驗證碼(%s)" % verifyCode) if veri.upper() == verifyCode.upper(): # 忽略掉用戶輸入的大小寫 print("驗證碼是正確的") else: print("驗證碼錯誤")
去掉兩邊的空白
s = "\n\nalex is sb " print(s) s7 = s.strip() # 去掉左右兩端的空白(空格, \t, \n), 中間的內容不會動 print(s7)
應用!
uname = input("請輸入你用戶名:").strip() # 幹掉用戶的空格 upws = input("請輸入你的密碼:").strip() # 幹掉用戶的空格 if uname =="alex" and upws == "123": print("登陸成功") else: print("登陸失敗") s = "sbalexsbwusirsb" print(s.strip("sb")) # 去掉左右兩端的sb
字符串替換
s = " good alex good wusir good 大蝦 good 胡辣湯 " s8 = s.replace("good", "sb") # 把s中的good替換成sb print(s8) s9 = s.replace(" ", "") print(s9) s10 = s.replace("good", "sb", 2) # 字符串替換2次 print(s10)
字符串切割
s = "alex 昨天給咱們漲工資了? 不可能" lst = s.split("alex") # 切出來的結果會放在列表中, 刀若是把頭了. 必定會產生空字符串 print(lst)
格式化輸出
name = "alex" age = 18 hobby = "wusir" print("領導叫%s, 今年%d, 喜歡%s" % (name, age, hobby)) print("領導叫{}, 今年{}, 喜歡{}".format(name, age, hobby)) print("領導叫{1}, 今年{0}, 喜歡{2}".format(name, age, hobby)) # 程序員數數從0開始 print("領導叫{na}, 今年{age}, 喜歡{hobby}".format(na = name, age = age, hobby = hobby)) print(f"領導叫{name}, 今年{age}, 喜歡{hobby}")
判斷字符串是否以XXX開頭
s = "java_python_區塊鏈_大數據" print(s.startswith("python")) # 判斷xxx是否已xxx開頭. name = input("請輸入你的名字:") # 張開 致青春 if name.startswith("張"): print("領錢") else: print("不領錢") 以xxx結尾 endwith()
數數
s = "alex is big sb" print(s.count("i")) # 計數 find() 查找, 若是存在. 返回索引. 若是不存在返回-1 s = "滋滋冒油的豬蹄子" print(s.find("牛")) # 用這個 index() 若是找到了返回索引. 找不到. 報錯 print(s.index("牛")) s = "alexwusir" print(s.isalpha()) # 是不是由基本的文字組成. 是不是由字母組成(包括中文)
判斷是不是數字組成
s = "123456798一" # digit 數字 %d print(s.isdigit()) # 阿拉伯數字 s = "123456789一二三壹仟貳佰壹拾伍叄" print(s.isnumeric()) # number s = "我叫周潤發,我喜歡DNF" print(len(s)) # 字符串長度, 內置函數
for循環有一個先決條件. 必須是可迭代對象.
# 遍歷錢包
# 缺點: 沒法看到字符的索引.
for循環來遍歷字符串
for: 循環
c: 變量
in : 固定的
s: 你要遍歷的內容
for c in s: # 把字符串s中的每個元素拿到賦值給前面的c print(c)
'''
for 變量 in 可迭代對象:
循環體(break, continue)
'''
一句話中的每個字符拿到
s = "風扇哥門神燈神哈哈個人天哪" # len(s) # 用while循環. 獲取到每個字符 i = 0 # 索引 while i < len(s): print(s[i]) i += 1