摘要:查找和替換判斷字符串是否以某個字符串開頭的,返回值為型判斷字符串是否以某個字符串結尾的,返回值為型檢測是否包含在字符串中,和是指定范圍。
python基礎 索引
字符串、列表和元組
字典
切片是指對操作的對象截取其中一部分的操作。字符串、列表、元組都支持切片操作。
切片的語法:[起始:結束:步長],選取的區間前閉后開。下面以字符串為例進行示范:
列表是寫在方括號([])之間、用逗號分隔開的元素列表。列表可以被索引和截取,列表被截取后返回一個包含所需元素的新列表。列表的常見操作如下:
append() 方法用于在列表末尾添加新的對象。 a=[1,2,3,4] a.append(5) print(a) # [1,2,3,4,5] extend() 函數用于在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)。 a=[1,2] b=["xiaoming","jack"] a.extend(b) print(a) # [1, 2, "xiaoming", "jack"] insert() 函數用于將指定對象插入列表的指定位置。 a=[1,2,3,4,5,6,7,8] a.insert(1,100) print(a) # [1, 100, 2, 3, 4, 5, 6, 7, 8]查找元素index、count
count() 方法用于統計某個元素在列表中出現的次數。 a=[1,2,3,4,5,23,4] a.count(2) # 1 index() 函數用于從列表中找出某個值第一個匹配項的索引位置。 a=[1,2,3,4,5,23,4] a.index(4) # 3刪除元素del、pop、remove、clear
del 刪除引用而不是刪除對象,對象由自動垃圾回收機制刪除 a=[1, 2, 3, 4, 5, 23, 4] del a[0] print(a) #[2, 3, 4, 5, 23, 4] del a print(a) # NameError: name "a" is not defined pop() 函數用于移除列表中的一個元素(默認最后一個元素),并且返回該元素的值。 a=[1,2,3,4,5,6] b=a.pop() # b=6 print(a) # [1, 2, 3, 4, 5] a.pop(3) # 刪除 4 print(a) # [1, 2, 3, 5] remove() 函數用于移除列表中某個值的第一個匹配項。 a=[1,2,2,3,4,5,5,4,3,2] a.remove(2) print(a) # [1, 2, 3, 4, 5, 5, 4, 3, 2] clear() 函數用于清空列表,類似于 del a[:]。 a=[1,2,3,4,5,6,7,8] a.clear() print(a) # []排序sort、reverse
sort() 函數用于對原列表進行排序,如果指定參數,則使用比較函數指定的比較函數。 sort(...) L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* a=[1,2,2,1,2,1,3,4,5] a.sort() # [1, 1, 1, 2, 2, 2, 3, 4, 5] 或 a.sort(reverse=True) # [5, 4, 3, 2, 2, 2, 1, 1, 1] reverse() 函數用于反向列表中元素。 a=[5, 4, 3, 2, 2, 2, 1, 1, 1] a.reverse() # [1, 1, 1, 2, 2, 2, 3, 4, 5]復制列表copy
copy() 函數用于復制列表,類似于 a[:]。 a=[1,2,3,4,5] b=a.copy() # b=[1, 2, 3, 4, 5] copy()和直接=賦值的區別: 使用=直接賦值,是引用賦值,更改一個,另一個同樣會變; copy() 則顧名思義,復制一個副本,原值和新復制的變量互不影響元組
元組(tuple)與列表類似,不同之處在于元組的元素不能修改,元組寫在小括號(())里。可以把字符串看作一種特殊的元組。雖然tuple的元素不可改變,但它可以包含可變的對象,比如list列表。
構造包含 0 個或 1 個元素的元組比較特殊,所以有一些額外的語法規則:
tup1 = () # 空元組 tup2 = (20,) # 一個元素,需要在元素后添加逗號
見上述list的count、index
字典是一種映射類型,字典用"{ }"標識,它是一個無序的鍵(key) : 值(value)對集合。鍵(key)必須使用不可變類型。
clear() 函數用于刪除字典內所有元素。 a={"name":"jack","age":18} a.clear() # {} pop()通過指定的key值,刪除字典的一個鍵值對,返回被刪除的key對應的value a={"name":"jack","age":18} a.pop("name") # return "jack" a={"age":18} popitem()隨機返回并刪除字典中的一對鍵和值(項)。為什么是隨機刪除呢?因為字典是無序的,沒有所謂的“最后一項”或是其它順序。在工作時如果遇到需要逐一刪除項的工作,用popitem()方法效率很高。 其返回值是元組,例如上述例子會返回:("name":"jack"),("age":18)copy
copy():返回一個字典的淺復制,如上list。fromkeys、items、keys、values
fromkeys() 函數用于創建一個新字典,以序列seq中元素做字典的鍵,value為字典所有鍵對應的初始值。 fromkeys(iterable, value=None, /) method of builtins.type instance Returns a new dict with keys from iterable and values equal to value. a=["a","b","c"] dict.fromkeys(a) # {"b": None, "c": None, "a": None} dict.fromkeys(a,10) # {"b": 10, "c": 10, "a": 10} items() 方法以列表返回可遍歷的(鍵, 值) 元組數組。 a={"name":"jack","age":18} a.items() # [("name", "jack"), ("age", 18)] keys() 方法以列表返回一個字典所有的鍵。 a.keys() # ["name", "age"] values()方法以列表返回字典中的所有值。 a.values() # ["jack", 18]get、update、setdefault
get() 函數返回指定鍵的值,如果值不在字典中返回默認值。 a.get("name") # "jack" update() 函數把字典dict2的鍵/值對更新到dict里。 b={"adress":"china"} a.update(b) # {"name": "jack", "adress": "china", "age": 18} setdefault() 方法和get()方法類似, 如果鍵不已經存在于字典中,將會添加鍵并將值設為默認值。 a={"name":"jack","age":18} a.setdefault("name",None) # "jack" a.setdefault("adress") # {"name": "jack", "adress": None, "age": 18}字符串
Python中的字符串用單引號(")或雙引號(")括起來,同時使用反斜杠()轉義特殊字符。
+是字符串的連接符,*表示復制當前的字符串,緊跟的數字為復制的次數。 Python 使用反斜杠()轉義特殊字符,如果你不想讓反斜杠發生轉義,可以在字符串前面添加一個 r,表示原始字符串: print(r"Ru oob") Python中的字符串不能改變。判斷類型方法(11)
isalnum():至少有一個字符并且所有字符都是字母或數字則返回True。
isalpha():至少有一個字符并且所有字符都是字母則返回True。
isdecimal():只包含數字則返回True。
isdigit():只包含數字則返回True。
isnumeric():只包含數字則返回True。包括漢字數字。
isidentifier():檢測字符串是否是字母開頭。
islower():至少包含一個區分大小寫的字符,且這些字符都是小寫則返回True。
isprintable():判斷字符串中所有字符是否都屬于可見字符。 a = "tPuppy"-》False
isspace():只包含空格則返回True。
istitle():是標題化(每個單詞的首字母大寫)則返回True。
isupper():至少包含一個區分大小寫的字符,且這些字符都是大寫則返回True。
大小寫轉換(5)capitalize():首字母大寫
lower():將所有的字母轉換成小寫字母
title():每個單詞首字母大寫
upper():將所有的字母轉換成大寫字母
swapcase():反轉字符串的大小寫。大寫變小寫,小寫變大寫。
去除空白字符(3)strip():去除字符串兩邊的空格。
lstrip():去除字符串左邊開頭的空格。
rstrip():去除字符串右邊開頭的空格。
查找和替換(7)startswith():判斷字符串是否以某個字符串開頭的,返回值為bool型
endswith():判斷字符串是否以某個字符串結尾的,返回值為bool型
find(str[, start[, end]]):檢測str是否包含在字符串中,start和end是指定范圍。找不到返回-1。
rfind():類似find,只不過從右開始查找。
index(sub[, start[, end]]):類似find,只不過找不到會報錯。
rindex():類似index,只不過從右開始查找。
replace(old, new[, count]):把字符串中的 old(舊字符串) 替換成 new(新字符串),如果指定第三個參數count,則替換不超過 count次。
str = "this is string example....wow!!! this is really string" str.replace("is", "was", 3) 返回結果:"thwas was string example....wow!!! thwas is really string"拆分與鏈接(6)
partition(sep):如果字符串包含指定的分隔符,則返回一個3元的元組,第一個為分隔符左邊的子串,第二個為分隔符本身,第三個為分隔符右邊的子串。如果不包含,則返回原字符串和兩個空字符串。
rpartition():類似partition,只不過從右邊開始查找。
split(sep=None, maxsplit=-1):字符串分割,默認為所有的空字符,包括空格、換行(n)、制表符(t)等。。如果maxsplit有指定值,則僅分割maxsplit+1個字符串,例:b="a b c x s d f g h j",b.split(maxsplit=3), ["a", "b", "c", "x s d f g h j"]
rsplit():類似split
splitlines([keepends]):在輸出結果里是否去掉換行符("r", "rn", n"),默認為 False,不包含換行符,如果為 True,則保留換行符。
>>> "ab c de fg kl ".splitlines() ["ab c", "", "de fg", "kl"] >>> "ab c de fg kl ".splitlines(True) ["ab c ", " ", "de fg ", "kl "]
join(seq):用于將序列中的元素以指定的字符連接生成一個新的字符串。
a="dufhskmakndkac" "-".join(a) # "d-u-f-h-s-k-m-a-k-n-d-k-a-c"其他(12)
casefold():
center(width[, fillchar):返回一個指定的寬度 width 居中的字符串,fillchar 為填充的字符,默認為空格。fillchar 默認是空格,只能是單個字符。如果 width 小于字符串寬度直接返回字符串,不會截斷。
count(sub[, start[, end]]):用于統計字符串里某個字符出現的次數。可選參數為在字符串搜索的開始與結束位置。
encode(encoding="UTF-8",errors="strict")):以指定的編碼格式編碼字符串。errors參數可以指定不同的錯誤處理方案。
expandtabs(tabsize=8):把字符串中的 tab 符號("t")轉為空格,tab 符號("t")默認的空格數是 8。
format():格式化輸出字符串。參考
format_map():
ljust(width[, fillchar]):返回一個原字符串左對齊,并使用空格填充至指定長度的新字符串。如果指定的長度小于原字符串的長度則返回原字符串。類似center
rjust(width[, fillchar]):返回一個原字符串右對齊,并使用空格填充至指定長度的新字符串。如果指定的長度小于原字符串的長度則返回原字符串。類似center
maketrans(intab, outtab):用于創建字符映射的轉換表,對于接受兩個參數的最簡單的調用方式,第一個參數是字符串,表示需要轉換的字符,第二個參數也是字符串表示轉換的目標。
兩個字符串的長度必須相同,為一一對應的關系。
intab = "aeiou" outtab = "12345" trantab = str.maketrans(intab, outtab) str = "this is string example....wow!!!" print (str.translate(trantab)) Out: th3s 3s str3ng 2x1mpl2....w4w!!!
translate(table):根據參數table給出的表(包含 256 個字符)轉換字符串的字符,要過濾掉的字符放到 deletechars 參數中。參考
zfill():返回指定長度的字符串,原字符串右對齊,前面填充0。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41452.html
摘要:基礎知識基礎語法基礎知識編程第一步基礎知識基本數據類型基礎知識解釋器基礎知識注釋基礎知識運算符基礎知識數字基礎知識字符串基礎知識列表基礎知識元組基礎知識字典基礎知識條件控制基礎知識循環基礎知識迭代器與生成器基礎知識函數基礎知識數據結構基礎知 Python3基礎知識 | 基礎語法?Python3基礎知識 | 編程第一步?Python3基礎知識 | 基本數據類型Python3基礎知識 | ...
摘要:基礎知識基礎語法基礎知識編程第一步基礎知識基本數據類型基礎知識解釋器基礎知識注釋基礎知識運算符基礎知識數字基礎知識字符串基礎知識列表基礎知識元組基礎知識字典基礎知識條件控制基礎知識循環基礎知識迭代器與生成器基礎知識函數基礎知識數據結構基礎知 Python3基礎知識 | 基礎語法?Python3基礎知識 | 編程第一步?Python3基礎知識 | 基本數據類型Python3基礎知識 | ...
摘要:首先,在學習之前一定會考慮一個問題版本選擇對于編程零基礎的人來說,選擇。建議從下面課程開始教程標準庫官方文檔非常貼心地提供中文翻譯首先需要學習的基礎知識,下載安裝導入庫字符串處理函數使用等等。 提前說一下,這篇福利多多,別的不說,直接讓你玩回最有手感的懷舊游戲,參數貼圖很方便自己可以根據喜好修改哦。 本篇通過以下四塊展開,提供大量資源對應。 showImg(https://segmen...
摘要:楚江數據是專業的互聯網數據技術服務,現整理出零基礎如何學爬蟲技術以供學習,。本文來源知乎作者路人甲鏈接楚江數據提供網站數據采集和爬蟲軟件定制開發服務,服務范圍涵蓋社交網絡電子商務分類信息學術研究等。 楚江數據是專業的互聯網數據技術服務,現整理出零基礎如何學爬蟲技術以供學習,http://www.chujiangdata.com。 第一:Python爬蟲學習系列教程(來源于某博主:htt...
閱讀 1163·2021-11-15 18:14
閱讀 3627·2021-11-15 11:37
閱讀 754·2021-09-24 09:47
閱讀 2427·2021-09-04 16:48
閱讀 2182·2019-08-30 15:53
閱讀 2379·2019-08-30 15:53
閱讀 390·2019-08-30 11:20
閱讀 1232·2019-08-29 16:08