1. 程式人生 > >一起學python 三 --字符串詳解,for循環

一起學python 三 --字符串詳解,for循環

pre 括號 分解 false 想要 lex -c clas with

1.整型
n = 56
    print(n.bit_length())     #查看值用幾位(bit)
    # python2 中有長整型  long
# python3 中全都是整型

2.bool
True False

print(boll(num))
#非0數字輸出Ture 數字0輸出False

  所有空的都是False
  0,None,[],{},(),""
 print(int(True))     1
 print(int( False))   0
    ## 字符串轉布爾值的時候,只要不為空就是Ture
3.字符串詳解
name=‘alex,wusir‘
#只要用特殊字符隔開就能分解認為是多個單詞(中文也是特殊字符)
1) 每個單詞的首字母大寫
s1 = name.title()
print(s) #Alex,Wusir
2) 只有第一個首字母大寫
s2 = name.capitalize() #Alex,wusir
3) 全部大寫
s3 = name.upper() #ALEX,WUSIR
4) 全部小寫
s4 = name.lower() #wlex,wusir

#應用場景
    yzm = ‘o98K‘
    y_zm = input("輸入驗證碼(‘o98K‘):")
    
    if yzm.upper() == y_zm.upper():
        print(‘驗證碼正確‘)
    else:
        print(‘驗證碼錯誤‘) 
    5) 統計內容個數(類似Word查找文字個數)
s5 = name.count(‘w‘) #1
6)切片
 s6 = pythonNB

        print(s[0:3])
        print(s[2])
        print(s[-3:-1:1])
        
print(s[2:8]) print(s[1:]) print(s[:5:2]) print(s[1:6:2]) print(s[:]) print(s[3::2]) print(s[-5::-3])

總結: 下標(索引)
從左往右 0開始 從右往左 -1 開始
從左往右 [起始位置:終止位置] 如果[-1:-4] 這樣可以取到內容嗎? 是不可以的
[a:b:c] [a:b]的方向要與c 的方向一致[-1:-4:-1]可取到內容
步長(扯蛋) [起始位置:終止位置:步長] (方向) 默認使用是1 也就是從左往右
想要從右往左 步長寫為 -1
可以一次性跨多個(例如我們寫的步長為2,3,4,5)
7) s7 = name.find("m") # 查找索引 查找不到返回-1
print(s7)

s8 = name.index(‘m‘) # 查找索引 查找不到就報錯
print(s8)
8)居中
s9 = name.center(,"") # 居中 第一個放數字,第二個放要填充的內容
9)分割
name = ‘al ex‘
s10 = name.split() # 分割 ############## 非常非常重要

()為空,默認使用空格分割;括號中有"",以引號內的分割

可以將字符串轉換成列表

10) 去除(脫)
s11 = name.strip() ###脫,默認去除頭尾兩邊的空格和換行符 \n
#可以在(括號)中填上我們要去除的內容,這個內容只能指定處於頭尾兩邊的

應用場景:
            user = input("請輸入用戶名:").strip()
            pwd = input("請輸入密碼:").strip()

            if user == alex and pwd == alex3714:
                print(可以取錢了)
            else:
                print(不能取錢)
      
11)插入
s12 = "".join() ##""中的指定字符拼接
     #拼接列表   
        lst = [1,2,3]
        s = _.join(lst)       #將列表轉化為字符串>>>>也可用for循環進入空字符串實現
        print(s)        
        #拼接字符串或數字
        s = "123456"
        c = "-".join(s)
        print(c)
        #將字符串變成豎直方向
        s = \n.join(name)
        print(s)
        

12) 替換
s13 = name.replace("","") #用第二個值替換掉第一個值
name = "a l e x l h "
print(name.replace(" ","") >>>alexlh

13) 以什麽開頭
s14 = name.isstartswith()

14) 以什麽結尾
s15 = name.isendswith()

15) 判斷是不是數字和字母
s16 = name.isalnum()

16) 判斷是不是純字母
s17 = name.isalpha()

17) 判斷是不是純數字 ####
s18 = name.isdigit()

18) 求取字符串長度
s19 = len(name)
# format的格式化輸出 ######3種代入方法
1.按照占位的順序來填充
   name = 張韶涵{}小{}{}

    s = name.format(是我的,,)  

2.按照索引來對應填充
   name = 張韶涵{0}小{2}{1}

    s = name.format(是我的,,) 
    3.按照關鍵字對應填充
  name = 張韶涵{a}小{b}{c}
    s1 = name.format(a=是我的,c=,b=)  

    print(s1)        總結        split   分割                       ********
        strip   脫  默認脫頭尾的空格        ********
replace 替換 ********
join 插入 拼接 ********
format % f ******
upper 全部大寫 ******
lower 全部小寫 ******
find 查找 不存在返回 -1 ******
index 查找 不存在報錯 ******
isdigit 判斷是不是純數字 ******
isalpha 判斷是不是純字母 ******
count 統計 *****
title 每個單詞首字母大寫 *****



for 循環
for 關鍵字
i 變量(此處可以更改 更改規則參考變量命名規則)
in 關鍵字
可叠代對象 (想要循環誰就放誰,註意:數字除外 因為數字不可叠代)

1.將每個字符串列出
name = "alex"
1)while循環方法
    count = 0 # 計數器
       while count < len(name):
            print(name[count])    
            count = count + 1     
        2)for循環方法
  for i in name:
            print(i) 
    2.在每個字符串後面加字符串
     name = "alex"
        for i in name:
            l = name[i] + 嘿嘿嘿
            l = i + 嘿嘿嘿
            print(l)
            
3. for 循環內可以進行任意操作,可以寫代碼塊:

例如:
     name = alex
        for i in name:
            l = input(">>>")
            print(l)

註意: for循環是有限循環 限制範圍取決與我們的叠代對象的長度

一起學python 三 --字符串詳解,for循環