最近在做Python 的項目,特地整理了下 Python 序列的方法。序列sequence是python中最基本的資料結構,本文先對序列做一個簡單的概括,之後簡單講解下所有序列都能通用的操作方法。
任何序列都可以引用其中的元素(item).
下面的內建函數(built-in function)可用於列表(表,定值表,字串)
#s為一個序列
len(s) | 回傳: 序列中包含元素的個數 |
min(s) | 回傳:序列中最小的元素 |
max(s) | 回傳:序列中最大的元素 |
all(s) | 回傳:True,若果所有元素都為真的話 |
any(s) | 回傳:True,如果任一元素為True的話 |
下面的方法主要起查詢功能,不改變序列本身, 可用於表和定值表:
# x為元素值,i為下標(元素在序列中的位置)
sum(s) | 回傳:序列中所有元素的和 |
s.count(x) | 回傳:x在s中出現的次數 |
s.index(x) | 回傳:x在s中第一次出現的下標 |
由於定值表的元素不可變更,以下方法只適用於表:
#l為一個表,l2為另一個表
l.extend(l2) | 在表l的最後加上表l2的所有元素 |
l.append(x) | 在l的末尾附加x元素 |
l.sort() | 對l中的元素排序 |
l.reverse() | 將l中的元素逆序 |
l.pop() | 回傳:表l的最後一個元素,並在表l中刪除該元素 |
del l[i] | 刪除該元素 |
(以上這些方法都是在原來的表的上進行操作,會對原來的表產生影響,而不是返回一個新表)
下面是一些用於字串的方法。儘管字串是定值表的特殊的一種,但字串(string)類別有一些方法是改變字串的。這些方法的本質不是對原有字串進行操作,而是刪除原有字串,再建立一個新的字串,所以並不與定值表的特徵相矛盾。
#str為一個字串,sub為str的一個子字串。 s為一個序列,它的元素都是字串。 width為整數,用來說明新產生字串的寬度。
str.count(sub) | 回傳:sub在str中出現的次數 |
str.find(sub) | 返回:從左開始,找出sub在str中第一次出現的位置。如果str中不包含sub,則回傳 -1 |
str.index(sub) | 返回:從左開始,找出sub在str中第一次出現的位置。如果str中不包含sub,請舉出錯誤 |
str.rfind(sub) | 返回:從右邊開始,找出sub在str中第一次出現的位置。如果str中不包含sub,則回傳 -1 |
str.rindex(sub) | 返回:從右開始,找出sub在str中第一次出現的位置。如果str中不包含sub,請舉出錯誤 |
str.isalnum() | 回傳:True, 如果所有的字元都是字母或數字 |
str.isalpha() | 回傳:True,如果所有的字元都是字母 |
str.isdigit() | 回傳:True,如果所有的字元都是數字 |
str.istitle() | 回傳:True,如果所有的字的首字母都是大寫 |
str.isspace() | 回傳:True,如果所有的字元都是空格 |
str.islower() | 回傳:True,如果所有的字元都是小寫字母 |
str.isupper() | 回傳:True,如果所有的字元都是大寫字母 |
str.split([sep,[max]]) | 回傳:由左開始,以空格為分割符(separator),將str分割為多個子字串,總共分割max次。將所得的子字串放在一個表中傳回。可以str.split(',')的方式使用逗號或其它分割符 |
str.rsplit([sep,[max]]) | 回傳:從右開始,以空格為分割符(separator),將str分割為多個子字串,總共分割max次。將所得的子字串放在一個表中傳回。可以str.rsplit(',')的方式使用逗號或其它分割符 |
str.capitalize() | 回傳:將str第一個字母大寫 |
str.lower() | 回:將str全部字母改為小寫 |
str.upper() | 回傳:將str全部字母改為大寫 |
str.swapcase() | 回傳:將str大寫字母改為小寫,小寫改為大寫 |
str.title() | 回傳:將str的每個字(以空格分隔)的首字母大寫 |
str.center(width) | 傳回:長度為width的字串,將原始字串放入該字串中心,其它空餘位置為空格。 |
str.ljust(width) | 傳回:長度為width的字串,將原字串左對齊放入該字串,其它空餘位置為空格。 |
str.rjust(width) | 傳回:長度為width的字串,將原字串右對齊放入該字串,其它空餘位置為空格。 |
str.join(s) | 回傳:將s中的元素,以str為分割符,合併成為一個字串。 |
str.strip([sub]) | 回傳:去掉字串開頭和結尾的空格。也可以提供參數sub,去掉位於字串開頭、結尾的sub |
str.replace(sub, new_sub) | 回傳:用一個新的字串new_sub取代str中的sub |
感謝閱讀,希望能幫助大家,謝謝大家對本站的支持!