列表處理字串
使用列表處理字串,可以極大節省**量,在一些特殊場合有出奇制勝的效果,本文將介紹一些處理技巧。
list_a =
list
(s)list_b =[1
,2,4
]
#正索引
a = list_a[0]
#負索引
b = list_b[-1
]
list_a1 = list_a[a:b]
#取[a,b)的數值
list_a2 = list_a[a:-1
]#捨棄最後一位
list_a2 = list_a[::
-1]#實現倒序
list_b = list_a*
3#重複三遍
list_c = list_a + list_b
flag =
'str1'
in list_a
for i in list_a:
print i
list_c =
[list_a,list_b]
#索引list_a = list_c[0]
a = list_c[0]
[0]
#改變對應索引的值
list_a[index]
= a#切片賦值
list_a[index1:index2]
= list_b
n =
len(list_a)
#末尾增加乙個元素
#指定位置插入元素
list_a.insert(index,a)
#拉伸,末尾新增多個元素
list_a.extend(list_b)
#彈出功能,刪除元素,並返回被刪除的元素
a = list_a.pop(
)#刪除末尾元素
a = list_a.pop(0)
#刪除首元素
#移除指定物件,不能賦值
list_a.remove(a)
#刪除功能
del list_a[a:b]
#指定刪除一段
del list_a #全部刪除
c = list_a.count(a)
#返回最小索引
index = list_a.index(a)
#在特定位置查詢,返回最小索引
index = list_a.index(a,index1,index2)
函式用於對原列表進行排序,如果指定引數,則使用指定引數,則使用比較函式指定的比較函式。
list
.sort(
cmp=
none
,key=
none
,reverse=
false
)
引數:
無返回值,對原列表進行操作。
sorted()函式不改變原系列,生成乙個新的排序系列
sorted
(iterable,cmp=none,key=none,reverse=false)
其中:
比較函式有兩個輸入引數,引數格式與需要排序元素的相同,可以採用大於返回1,等於返回0,小於返回-1:python3已將該功能刪除
def cmpf
(x,y)
:if x>y:
return
1 elif x==y:
return0:
else
:return
-1
key形參用來指定在進行比較之前要對每個列表元素進行呼叫的函式
例如key = str.lower會將大寫轉化為小寫在比較
str1 =
"stringsgggjhjh"
str_sort =
sorted
(str1,key=
str.lower)
一種常見的使用方法,選取元素的第幾個引數作為排序物件
key =
lambda x:x[
1]
key形參的值應該是乙個函式,它接受乙個引數並返回乙個用於排序的鍵
將字串轉化為列表比較簡單,用list(str1)可以將字串轉化為字元儲存在列表中,但將列表轉化我字串,比較複雜,str(list1)是將list的每個元素轉化為字串,要恢復原字串,需要使用拼接功能。
str_a =
"string123"
print str_a
#字串轉化為列表
list_a =
list
(str_a)
print list_a
#列表元素轉化為字串
str1 =
str(list_a)
print str1
#使用拼接恢復字串
str2 =
''for i in list_a:
str2 = str2 + i
print str2--
--string123
['s'
,'t'
,'r'
,'i'
,'n'
,'g'
,'1'
,'2'
,'3'][
's',
't',
'r',
'i',
'n',
'g',
'1',
'2',
'3']
string123
字串排序
names =
['alice'
,'bob'
,'coco'
,'harry'
]names.
sort()
names ###按照ascll排序 ###先排序首字母為大寫的,再排序首字母是小寫的
names.
sort
(key=str.lower) ###對字串排序不區分大小寫,相當於將所有元素轉換為小寫,再排序
names.
sort
(key=str.upper) ###相當於將所有元素轉換為大寫,再排序
Python中字串與列表轉換及字串打散組合
在python中經常會遇到列表中元素轉換為字串,字串轉換為列表,將字串打散的等問題。下面依次說下我的做法 1.讀入整數 在做一些oj時,經常碰到讀取輸入的整數,如果是讀入單個整數,可以用 x input 這樣x返回的結果就是整數,無需轉換,但如果輸入是 123 456 78 這樣的,光靠input ...
Python 字串轉列表,列表轉字串
一般計算字串的數量,用len 方法就能實現,例如 str string len str 6 s,t,r,i,n,g 但是,當要計算單詞的數量時,該怎麼辦?sentence hello world and python len sentence 24 問題 一段訊息裡面的單詞數計數。寫乙個函式,當單詞...
Python 字串處理
python endswith 方法用於判斷字串是否以指定字尾結尾,如果以指定字尾結尾返回 true 否則返回 false 可選引數 start 與 end 為檢索字串的開始與結束位置。語法 endswith 方法語法 str.endswith suffix start end 引數 返回值 如果字...