標籤:src 開頭 start 可迭代對象 分行符號 enter Python全棧 分享圖片 本質
基礎資料類型初識1、int型 int:用於計算。
十進位轉化成二進位的有效位元。
1 0000 0001
2 0000 0010
3 0000 0011
... ...
100 ?
計算十進位轉化成二進位的有效位元。.bit_length()
i = 100print(i.bit_length())
2、字串str str: ‘alex‘、‘1235443543‘、‘[1,2,3]‘。可存放少量資料。 索引、切片、步長 索引編號:
python12期
012345678
p 的正向索引編號為0,y 的正向索引編號為1,t 的正向索引編號為2,h 的正向索引編號為3,o 的正向索引編號為4,n 的正向索引編號為5,1 的正向索引編號為6,2 的正向索引編號為7,期 的正向索引編號為8.
索引:
[索引位編號]
s = ‘python12期‘s1 = s[0]print(s1,type(s1))
s = ‘python12期‘s2 = s[4]print(s2)
s = ‘python12期‘s3 = s[2]print(s3)
python12期
-9-8-7-6-5-4-3-2-1
期 的反向索引編號為-1,2 的反向索引編號為-2,1 的反向索引編號為-3,n 的反向索引編號為-4,o 的反向索引編號為-5,h 的反向索引編號為-6,t 的反向索引編號為-7,y 的反向索引編號為-8,p 的反向索引編號為-9。
s = ‘python12期‘s4 = s[-1]print(s4)
切片:
[索引起始位編號:索引結束位編號]
顧頭不顧尾。
s = ‘python12期‘s5 = s[0:6]print(s5)
中括弧中的切片起始位索引為為0時,可省略。
s = ‘python12期‘s6 = s[:6]print(s6)
s = ‘python12期‘s7 = s[1:4]print(s7)
當中括弧中索引位結束編號省略時,預設切片達到字串結束。
s = ‘python12期‘s8 = s[1:]print(s8)
當中括弧中索引起始位編號與索引結束位編號省略時,預設對整個字串切片,但是切片處的結果與原字串本質上不是同一個內容(不同的儲存位置)。
s = ‘python12期‘s9 = s[:]print(s9)
步長:
在中括弧中,索引的結束位後邊加上 :數字 表示截取的步長,即每幾位截取一位。同時只能等距截取。
s = ‘python12期‘s10 = s[:5:2]print(s10)
s = ‘python12期‘s11 = s[4::2]print(s11)
當步長為負數時,表示倒序截取。
s = ‘python12期‘s12 = s[-1:-5:-1]print(s12)
s = ‘python12期‘s12 = s[-3:-1]print(s12)
字串的常用操作方法: ** capitalize 首字母大寫,其餘字母小寫。
s = ‘laoNANhai‘s1 = s.capitalize()print(s1)
* center 置中
center(a,b) -a為設定字串的總位元,當設定的總位元小於字串的位元時,不變。 -b為在空位元上填充的字串。
s = ‘laoNANhai‘s2 = s.center(27,"*")print(s2)
*** upper:全大寫
s = ‘laoNANhai‘s3 = s.upper()print(s3)
*** lower:全小寫
s = ‘laoNANhai‘s4 = s.lower()print(s4)
code = ‘QAdr‘.upper()your_code = input("請輸入驗證碼,不分大小寫:").upper()if your_code == code: print("驗證成功")
*** startswith 判斷以什麼內容開頭
返回bool值
s = ‘laoNANhai‘s5 = s.startswith(‘l‘)print(s5)
s = ‘laoNANhai‘s6 = s.startswith(‘lao‘)print(s6)
返回bool值,可以切片,切片用逗號隔開。
s = ‘laoNANhai‘s7 = s.startswith(‘N‘,3,6)print(s7)
* swapcase 大小寫翻轉
s = ‘laoNANhai‘s8 = s.swapcase()print(s8)
* title 非字母隔開的每個單字首大寫。
s = ‘gdsj wusir6taibai*ritian‘s9 = s.title()print(s9)
*** 通過元素找索引
index:通過元素找索引,可切片,找不到報錯。
s = ‘gdsj wusir6taibai*ritian‘s10 = s.index(‘a‘)print(s10)
s = ‘gdsj wusir6taibai*ritian‘s12 = s.index(‘Q‘)print(s12)
find:通過元素找索引,可切片,找不到返回-1。
s = ‘gdsj wusir6taibai*ritian‘s13 = s.find(‘a‘)print(s13)
s = ‘gdsj wusir6taibai*ritian‘s14 = s.find(‘A‘,2)print(s14)
s = ‘gdsj wusir6taibai*ritian‘s15 = s.find(‘Q‘)print(s15)
\t :縮排符,縮排一個Tab鍵的距離。
s = ‘\talex‘print(s)
\n :分行符號。
ss = ‘alex\n‘print(ss)
s = ‘\talex\n‘print(s)
*** strip() 去除前後端的空格、分行符號、定位字元。
s = ‘\talex\n‘s16 = s.strip()print(s16)
username = input("請輸入賬戶名:").strip()if username == "婉蓉": print("登陸成功")
strip(‘a‘) 去除兩端的指定字元,某一端當遇到第一個非a字元時,該端停止操作,另一端也遇到非a時完成操作。
s = ‘ ablabsexsba‘s17 = s.strip(‘a‘)print(s17)
strip(‘abc‘) 當括弧內的字元不只一個時,將括弧內的內容拆分成單個的最小單元,然後從兩端不分順序的去除,當遇到非括弧內的組成單元時,操作結束。
s = ‘ ablabsexsba‘s18 = s.strip(‘abc‘)print(s18)
lstrip(‘a‘) 去除左端的a字元。
s = ‘ablabsexsba‘s19 = s.lstrip(‘a‘)print(s19)
rstrip(‘a‘) 去除右端的a字元。
s = ‘ablabsexsba‘s20 = s.rstrip(‘a‘)print(s20)
*** split() str ---> list
預設以空格隔開。
s = ‘wusir alex taibai‘s21 = s.split()print(s21)
s = ‘wusir,alex,taibai‘s22 = s.split(‘,‘)print(s22)
split(‘a‘,b) b為數字,也可以設定以a隔開,然後設定隔開前b個a,後邊如果再有a,不考慮。
s = ‘QwusirQalexQtaibai‘s23 = s.split(‘Q‘, 2)print(s23)
*** join: 加入
s = ‘alex‘s24 = ‘+‘.join(s)print(s24)
在某些情況下,list ---> str 。
s = [‘wusir‘, ‘alex‘, ‘taibai‘]s25 = ‘ ‘.join(s)print(s25)
replace(‘a‘,‘b‘) a為被替換的內容,b為替換後的內容。
s = ‘小粉嫩小粉嫩ghlasdfg小粉嫩‘s26 = s.replace(‘小粉嫩‘, ‘大鐵鎚‘)print(s26)
replace(‘a‘,‘b‘,c) a為被替換的內容,b為替換後的內容,c為數字,意為從左至右將前c個a替換為b。
s = ‘小粉嫩小粉嫩ghlasdfg小粉嫩‘s27 = s.replace(‘小粉嫩‘, ‘大鐵鎚‘, 2)print(s27)
公用方法: len() 統計字串的總個數。
s = ‘fdsajlskgjdsaf;jdskfsdaf‘print(len(s))
count() 計算某些元素出現的個數,可切片。
s = ‘fdsajlskgjdsaf;jdskfsdaf‘s28 = s.count(‘f‘)print(s28)
format 格式化輸出 三種方式: 1、 {} 預留位置
msg = ‘我是{},今年{},喜歡{}‘.format(‘太白‘, ‘20‘,‘girl‘)print(msg)
2、
msg = ‘我是{0},今年{1},喜歡{2},我依然叫{0}‘.format(‘太白‘, ‘20‘,‘girl‘)print(msg)
3、 \ 分行符號
msg = ‘我是{name},今年{age},喜歡{hobby},我依然叫{name}‘ .format(name = ‘太白‘, age = ‘20‘,hobby = ‘girl‘)print(msg)
isalnum() 字串由字母或數字組成。
name = ‘jinxin123‘print(name.isalnum())
isalpha() 字串只由字母組成。
name = ‘jinxin123‘print(name.isalpha())
isalnum() 字串只由數字組成。
name = ‘jinxin123‘print(name.isdigit())
for迴圈: for i in 可迭代對象: pass
s = ‘fdsagdsfgfdsadsaf‘count = 0while count < len(s): print(s[count]) count += 1
s = ‘fdsagdsfgfdsadsaf‘for i in s: print(i + ‘sb‘)
3、bool int <-----> str str -----> int :int(str) 條件: 字串必須全部由數字組成。
age = int(input(">>>"))print(age,type(age))
int ----->str :str(int)
s1 = str(123)s2 = 123print(s1, type(s1))print(s2, type(s2))
bool <-----> int True ----->1 False ----->0
print(int(True))
print(int(False))
int ----->bool 非零即為Ture,零為False。
print(bool(100))
print(bool(0))
print(bool(-1))
bool -----> str str(True) str(False) str -----> bool 非空即為True,‘‘Null 字元串為False。
s1 = ‘‘if s1: print(666)
4、list
[‘name‘,Ture,[]....] 各種類型的資料,大量資料,便於操作。
5、tuple 元組
() 唯讀列表,可讀不可寫。
6、dict
{‘name‘:‘老男孩‘,
‘name_list‘:[‘反面教材‘,......]
‘alex‘:{‘age‘:40,
‘hobby‘:‘oldwomen‘,
}
},
儲存大量的資料,關係型資料。
7、set
{‘wusir‘,‘alex‘,...}
Python全棧__字串初識及操作