Python內置數據結構——字符串

知識結構圖

Python內置數據結構——字符串

學習筆記

字符串

字符組成的有序序列,字符的集合

使用單引號、雙引號、三引號引起來的字符序列

不可變對象

Unicode類型

定義

單引號、雙引號、三引號

r、R:引號內的字符原樣輸出

元素訪問

索引訪問

可迭代

join連接

string“.join(iteratable)

使用string作為分隔符將可迭代對象連接起來

可迭代對象本身元素都是字符串

返回一個新的字符串

+

2個字符串鏈接在一起

返回一個新的字符串

分割

split

將字符串按照分隔符分割成若干字符串,并返回列表

split(sep=None,maxsplit=-1)

從左至右

sep指定分割字符串,缺省為空白字符串

maxsplit指定分割的次數,-1表示遍歷整個字符串

rsplit(sep=None,maxsplit=-1)

從右至左

sep指定分割字符串,缺省為空白字符串

maxsplit指定分割的次數,-1表示遍歷整個字符串

splitline([keepends])

按照行來切分字符串

keepends指的是是否保留行分隔符(\n、\r\n、\r)

partition

將字符串按照分隔符分割成2段,返回這2段和分隔符的元組

partition(sep) -> (head, sep, tail)

從左至右,能找到分隔符則返回頭、分隔符、尾的三元組,否則分會頭、2個空元素的三元組

sep為分割字符串,必須指定

rpartition(sep) -> (head, sep, tail)

從右至左,同partition

大小寫轉換

upper():全大寫

lower():全小寫

swapcase():大小寫交換

排版

title():標題的每個單詞詞首大寫

capitalize():首個單詞大寫

center(width[,fillchar]):指定width寬度,使用fillchar填充

zfill(width):打印寬度,居右,左邊使用0填充

ljust(width[,fillchar]):左對齊

rjust(width[,fillchar]):右對齊

修改

replace(old,new[,count]):字符串中找到匹配子串替換為新子串,返回新的字符串,count表示替換的次數,默認全部替換

strip([chars]):從字符串兩端去除指定字符集chars中的所有字符,不指定chars默認去除空白字符

lstrip([chars]):只去除左端

rstrip([chars]):只去除右端

查找

find(sub[,start[,end]]):在指定區間[start,end)從左至右查找子串sub,找到返回索引,沒有則返回-1

rfind(sub[,start[,end]]):從右至左

index(sub[,start[,end]]):在指定區間[start,end)從左至右查找子串sub,找到返回索引,沒有則拋出ValueError

rindex(sub[,start[,end]]):從右至左

時間復雜度O(n)

len(string):字符串長度

count(sub[,start[,end]]):在指定區間[start,end)從左至右統計子串sub出現的次數

判斷

endswith(suffix,[start[,end]]):在指定區間,字符串是否以suffix結尾

startswith(prefix,[start[,end]])

isalnum()

isalpha()

isdecimal():十進制

isdigit()

isidentifier():是否是標識符,字母下劃線開頭

islower()

isupper()

isspace()

格式化

format函數

“{}{xxx}”.format(*args,**kwargs)

args:位置參數,是一個元組

kwargs:關鍵字參數,是一個字典

{}:占位符

{}:按順序匹配位置參數

{n}:按索引為n的參數

{xxx}:在關鍵參數中搜索名稱一致的

{{}}:打印{}

位置參數

‘{}{}’.format(arg1,arg2):按照位置順序用位置參數替代前面的字符串中的占位符

關鍵字參數或命名參數

‘{kw1}{}{kw2}’.format(arg1,kw1=’kwarg1′,kw2=’kwarg2′):位置參數按照序號匹配,關鍵字參數按照名稱匹配

對齊

<:向左對齊

>:向右對齊

>0n:字符數不夠,前面使用0補齊

^:居中對齊

x^:兩端使用x補齊

進制

“int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}”.format(42)

“int: {0:d}; hex: {0:#x}; oct: {0:#o}; bin: {0:#b}”.format(42)

????????????????????????????????

????

原創文章,作者:ZBD20,如若轉載,請注明出處:http://www.www58058.com/94047

(0)
ZBD20ZBD20
上一篇 2018-03-31
下一篇 2018-03-31

相關推薦

  • 日志分析項目

    日志分析

    2018-05-07
  • queue,threading,user_agents

    queue 模塊 隊列
    threading 模塊 線程
    user_agents 瀏覽器信息提取

    2018-05-07
  • PYTHON類型注解

    PYTHON類型注解 函數定義的弊端 Python是動態語言,變量隨時可以被賦值,且能賦值為不同的類型 Python不是靜態編譯型語言,變量類型是在運行器決定的 動態語言很靈活,但是這種特性也是弊端 def add(x, y):return x + yprint(add(4, 5))print(add(‘hello’, ‘…

    Python筆記 2018-05-02
  • Python第十二周學習總結

    Git的使用

    2018-05-27
  • 正則表達式

    正則表達式 分類 BRE:基本正則表達式,grep,sed,vi等軟件支持,vim有擴展 ERE:擴展正則表達式,egrep,grep -E ,sed ?r等 PCRE:幾乎所有的高級語言都是PCRE的方言或則變種, 基本語法 元字符metacharater . ?匹配除換行符外任意一個字符 [abc]字符集合,只能表示一個字符的位置,匹配所包含的任意一個字…

    Python筆記 2018-05-07
  • 基礎語法

    基礎語法、判斷、循環

    2018-03-26
欧美性久久久久