1. 程式人生 > >python學習筆記:字串基礎

python學習筆記:字串基礎

1、字串的切片(擷取)
    語法為:str[(start=0):(end+1=len(str)):(step=1)]
    從start開始,每step個字元擷取一個字元,直到end
    有正向索引和負向索引,從0到len或者從後向前-1到len
    如果步長step為負數,則start預設為-1,end預設為-(len+1),即反向擷取
    如果步長step為正數,則start預設為0,end預設為len,即正向擷取
    例題:判斷一個字串是否為迴文串
    mystr = input("Please input a number")
    if mystr[::1] == mystr[::-1]:
        print("This is a Huiwenchuan")
    else:
        print("This is not a Huiwenchuan")
2、python中常用序列函式:
    len(a)
    max(a):返回序列a中最大值
    min(a):返回序列a中最小值
3、字元編碼轉換函式:
    ord(c)    返回字元c的unicode編碼
    chr(i)     返回unicode編碼i對應的字元
4、整數轉字串函式
    hex(i)    將整數轉換為16進位制字串
    oct(i)    將整數轉換為8進位制字串
    bin(i)    將整數轉換為2進位制字串
5、字串建構函式
    str(obj)
6、python中常用字串方法(method)
    s.strip() 去掉字串開頭和末尾的空格和換行符
    s.strip('abc')    把'abc'轉換成陣列,從左邊或者右邊開始向中間,去掉字串中的字元a,b和c,直到遇到字元不在該字串裡
    s.lstrip()
    s.rstrip()
        這些函式預設去掉字串左邊和右邊的空格和回車等不顯示字元
    
    s.count('abc')    返回s字串中子串abc出現的次數,注意:字串'cccccc'中'cc'子串出現的次數為3
    s.capitalize()    首字母轉大寫
    s.center(width[,fillChar])把字串a放在長度為width的新串的中心,其餘用Fillchar填充,fillChar預設為' '
    s.find('abc')在字串中尋找'abc'找到返回a的位置,找不到返回-1
    s.index('abc')在字串中尋找'abc'找到返回a的位置,找不到報錯    
    s.replace(oldstr,newstr[,count=正無窮])用newstr替換s中前count個oldstr,未找到oldstr則不做更改;注意'cccccc'.repalce('cc','a') = 'aaa'
    s.startswith(prefix[,start[,end]])字串是否以prefix字串為開頭
    s.endswith(suffix[,start[,end]])字串是否以suffix為結尾
    s.isalnum()字串是否全是字母和數字
    s.isalpha()字串是否全是字母
    s.isdigit()字串是否全是數字
    s.isspace()字串是否全是空白符
    s.islower()字串中字母是否全是小寫
    s.isupper()字串中字母是否全是大寫
    s.istitle()字串是否首字母大寫

7、字串格式化表示式:生成一定格式的字串
    運算子 %
    語法格式為:格式化字串 % 引數值
            或者
            格式化字串 % (引數值1 , 引數值2 ...引數值n)
    格式化字串中%加型別碼構成佔位符,實際使用時用引數代替
    例子:
    mystr = "name: %s, age: %d"
    print(fmt % ('WilliamCode','19')

    格式化字串中的型別碼:
    %s    字串
    %r    字串repr
    %c     數值轉單個字元
    %d     以十進位制數顯示
    %x     以16進位制數顯示,字母為a-f
    %X     以16進位制數顯示,字母為A-F
    %o     以8進位制數顯示
    %e    以指數形式顯示浮點數,e小寫
    %E    以指數形式顯示浮點數,E大寫
    %f %F    顯示浮點數
    %g %G    十進位制顯示浮點數,自動決定顯示浮點或者指數

8、佔位符和型別碼之間的關係
    %[-+0寬度.精度]x
    -左對齊
    +顯示正負號
    0空位置補0
    注:對於整數,精度代表前面補0補到一共多少位,對於浮點數,指保留幾位小數