Python字符串與列表

2018-06-08 17:14 更新


概念:

序列是Python中最基本的數據結構。序列中的每個元素都分配一個數字 - 它的位置,或索引,第一個索引是0,第二個索引是1,依此類推。

序列都可以進行的操作包括索引,切片,加,乘,檢查成員。

此外,Python已經內置確定序列的長度以及確定最大和最小的元素的方法。

列表是最常用的Python數據類型,它可以作為一個方括號內的逗號分隔值出現。

列表的數據項不需要具有相同的類型

   1. 掌握列表基礎知識

1.1 列表的特點:

支持異構:一個列表中含不同類型的對象

 支持嵌套:即列表中的元素可以是列表

可變:支持通過索引,切片,進行修改

1.2 如何定義列表:

方法一(推薦):[];

例:list1=[1,3,5]
list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];
list3 = [[1,2,3], "a", "b", "c", "d"];

方法二:使用內置函數list(): 內建函數list(a_sequence) 可以將一個序列轉為列表

 

例1:
>>> str1="dddgf"
>>> list1=list(str1)
>>> list1
['d', 'd', 'd', 'g', 'f']

例2:

2. 訪問列表中的值

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
 
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

3. 更新列表

list = ['physics', 'chemistry', 1997, 1998];
 
print "Value available at index 2 : "
print list[2];
list[2] = 2001;
print "New value available at index 2 : "
print list[2];

4. 列表的索引和切片:

classmates = ['Madking','Agon', 'Michael', 'Bob', 'Tracy']
print classmates[0]
'Michael'
print classmates[1]
'Bob'
print classmates[2]
'Tracy'
print classmates[3]
print classmates[1:-2]
print classmates[1:3]
print classmates[::2]


5. 掌握列表相關方法:   

2.1  append():向列表中追加元素

例如:

 

2.2 extend():追加可迭代對象中所有元素

      例1:

list2=[1,2,3]
list3=[]
list3.extend(list2)

例2

2.3 insert():在指定索引位置插入

插入例子:

2.4 pop():按照索引彈出元素,返回值為該元素。默認彈出最后一個元素。

例如:

classmates = ['Michael', 'Bob', 'Tracy']
classmates.pop()
classmates.pop(1)
print classmates

 

2.5 remove():按照元素值彈出第一個匹配項

例如:

 

aList = [123, 'xyz', 'zara', 'abc', 'xyz'];
 
aList.remove('xyz');
print "List : ", aList;
aList.remove('abc');
print "List : ", aList;

 

2.6 count():統(tǒng)計指定值出現的次數

2.7 index():某個值第一次出現的位置

例如:

2.8 reverse():反向存放

例如:

2.9  查詢遍歷:

for I in list
for i,k enumerate(li)

2.10 sort():排序

aList = [123, 'xyz', 'zara', 'abc', 'xyz'];
 
aList.sort();
print "List : ", aList;

 

2.11 max() min()

6. 掌握序列類型操作:序列類型包括:字符串、列表、元組

3.1 +連接*重復

例如:

實例

 

3.2 max():求最大值、min():求最小值

例如:

7. 掌握列表生成式

列表生成式,是Python內置的一種極其強大的生成list的表達式。

4.1 用于:基于已有列表生成新列表

4.2 語法結構:

列表生成式的書寫格式:[x*x for x in range(1 , 11)]

第一:把要生成的元素 x*x 放到前面

第二:后面跟上for循環(huán)

這樣就可以把list創(chuàng)建出來。

for循環(huán)后面還可以加上if判斷

4.3 舉例:

1到10之間的偶數平方再除以2  作為新列表元素

1到10之間的偶數 ,作為新列表元素

 


    

4.4 特點:一次性生成新列表,如果列表數據過大,會消耗大量資源。


三、字符串

1.2 掌握字符串常用方法

1.2.1 s.find() s.join() s.split() s.replace() s.strip() 
1.2.2 s. isalnum()/s.isalpha()/s.isdigit()
1.2.3 s.upper()/      s.lower()
1.2.4 s.count()
1.2.5 len(s)

【考核要求】

1. 序列類型常用操作

a) 索引和切片

1.1.1 索引:例:s[0]從左向右:索引從0開始 ;從右向左:索引從-1開始

1.1.2 切片:例:s[0:2]

Print a[:2]

 

實例:

url = “www.python.org”

print url[4:10]

 

實例:

print "Hello"[:3] 從第一個字符開始截取

print "Hello"[0:] 從第一個字符開始截取,一直截取到最后

print "Hello"[:] 道理同(2)

 

1.1.3 擴展切片:指定步長,例:s[0:9:2]

print ABCDEFG[::2]

 

b) 掌握格式化輸出:使用python輸出各種類型的字符串、整數、浮點數

格式:

print “字符串  %format1 %format2…  ”  % (變量或值1,變量或值2...)

符號及其對應輸出格式:

%d            十進制整數

%f                浮點數

%s                字符串

%%                用于輸出符號%

 

                       實例:

                      

Name = ‘張飛’
Age= 16
print ‘my name is %s’ % Name
print ‘I am 16 years old’% Age
print "My name is %s and weight is %d kg!" % ('Zara', 21)

c) 強制類型轉化

int():強制轉換為整型,

例如:

注意:只能將由數字組成的字符串轉換為整型


錯誤用法

 

float():強制轉換為浮點型例如

 

str():強制轉換為字符串例如:


 


 

d) 字符串轉換實例:格式化輸出菜單列表;將用戶的輸入數值轉化整型并驗證

 

2. 掌握字符串常用方法

s.find(t):查找子串t,找到返回首次出現位置的索引值,找不到則返回-1

實例:

 

s.split(sep):使用sep作為分割符,列表返回結果。

實例:str=”www.baidu.com”

str.split(".")  得到["www ","baidu","com"]序列

  實例:

  


s.join(iter) 使用s作為連接符連接序列iter中所有元素

例如:list2=["h","e","l","l","o"," .","c","o","m"]

     “”.join(list2)

實例:

   

    

 

s.replace(old,new):替換

實例

 


 


      

s. strip(t): 刪掉開頭和結尾的字符t(沒有參數t則刪除空白符)

如:刪除空白符 s1.strip()

s.isalpha()/s.isdigit(): /是否為字母/是否為數字

      

結果是bool類型

s.upper()/   s.lower():所有字母轉化為大寫字母/小寫字母,

s.count(t) 統(tǒng)計t出現的次數

   


    

本文出自 “一盞燭光” 博客,謝絕轉載!

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號