1. 程式人生 > >Python學習-字串函式操作3

Python學習-字串函式操作3

字串函式操作

isprintable():判斷一個字串中所有字元是否都是可列印字元的. 與isspace()函式很相似

如果字串中的所有字元都是可列印的字元或字串為空返回 True,否則返回 False

str1 = 'gheruiv';
str2 = '\n\t';
print(str1.isprintable());   //True
print(str2.isprintable());    //False

istitle():判斷一個字串中所有單詞的首字母是不是大寫

返回值為布林型別,True或者False

str1 = 'wo shi liu wen'
print(str1.istitle());    // False
print(str1.title());      //Wo Shi Liu Wen

join(iterable):根據指定的字串,將給定的可迭代物件,進行拼接,得到拼接後的物件

返回通過指定字元連線可迭代物件中的元素後生成的新字串.   

可迭代物件:字串、列表、元祖、字典

str = "woshiliuwen";
n = '-';
res = n.join(str);
print(str);    // woshiliuwen
print(res);   //w-o-s-h-i-l-i-u-w-e-n

ljust(width,fillchar):根據指定的字串,將原來的字串填充夠指定長度,返回一個原字串左對齊,並使用指定字元填充至指定長度的新字串

rjust(width,fillchar):根據指定的字串,將原來的字串填充夠指定長度,返回一個原字串右對齊,並使用指定字元填充至指定長度的新字串

width:得到目標字串的長度

fillchar:填充的字元

不會修改原字元,只有字串長度小於指定長度才會填充

str1 = "liuwen"
res1 =str1.ljust(20,'-')
res2 =str1.rjust(20,'-')
print(res1)    // liuwen--------------
print(res2)   //--------------liuwen

str.maketrans(intab,outtab):

方法用於建立字元對映的轉換表,對於接受兩個引數的最簡單的呼叫方式,第一個引數是字串,表示需要轉換的字元,第二個引數也是字串表示轉換的目標。

intab:需要轉換的字元組成的字串。

outtab:轉換的目標字元組成的字串。

注意:兩個字串的長度必須相同,為一一對應的關係。返回字串轉換後生成的新字串。

m = "vndlvbldapelsjfosj"
n = str.maketrans("aljsv","12345");
res = m.translate(n);
print(res);    // 5nd25b2d1pe243fo43

swapcase():用於對字串的大小寫字母進行轉換,返回大小寫字母轉換後生成的新字串

str = 'LIu weN mINg';
res = str.swapcase();
print(res);   // liU WEn MinG

spilt(sep,maxsplit):通過指定分隔符將一個大的字串進行分割變成幾個小的字串並返回一個列表。並不會修改原字串

sep:分割符

maxsplit:最大分割次數,可以省略  有多少分割多少

str = 'ljbjgdfkjmmjhusjdvdjsjs'
res1 = str.split();
res2 = str.split("j");
res3 = str.split("j",3);
print(res1);    // ['ljbjgdfkjmmjhusjdvdjsjs']
print(res2);    // ['l', 'b', 'gdfk', 'mm', 'hus', 'dvd', 's', 's']
print(res3);   //  ['l', 'b', 'gdfk', 'mmjhusjdvdjsjs']

splitlines(keepends=False):按照換行符(\r,\n),將字串拆解成多個元素,儲存到列表中.

keepends:預設為False,為True時,會保留換行符

不會修改原來字串

str = 'liu\nwen\nming\n'
print(str.splitlines());         //['liu', 'wen', 'ming']
str1 = 'liu\nwen\nming\n'
print(str1.splitlines(True));   // ['liu\n', 'wen\n', 'ming\n']

 partition(seq):根據指定的分隔符,返回(分隔符左邊內容,分隔符,分隔符右邊內容)

rpartition(seq):用法和上面的相同

seq:分隔符    返回一個元組

不會修改原來字串  從左邊開始查詢分隔符

str = "jsh-vksgv-shkvk-fwouf";
res1 = str.partition("-");
print(res1);    // ('jsh', '-', 'vksgv-shkvk-fwouf')