PYTHON機器學習自學/自修 整理[00023] ~ Python – 100天从新手到大师(07.字串和常用数据结构.md)

PYTHON機器學習自學/自修 整理[00023] ~ Python – 100天从新手到大师(07.字串和常用数据结构.md)

PYTHON機器學習自學/自修 整理[00023] ~ Python – 100天从新手到大师(07.字串和常用数据结构.md)



列表(陣列)常用操作

import sys
import decimal#精準度/精度 運算
import random

list1=[ 1 , 3 , 5 , 7 , 100 ]
print(list1) #[1, 3, 5, 7, 100] 
#乘號表示列表元素的重複
list2=[ 'hello' ] *  3 
print(list2) #['hello', 'hello', 'hello'] 
#計算列表長度(元素個數) 
print(len(list1)) # 5 
#下標(索引)運算
print(list1[ 0 ]) # 1 
print(list1[ 4 ]) # 100 
# print(list1[5]) # IndexError: list index out of range 
print(list1[ - 1 ]) # 100 
print(list1[ - 3 ]) # 5 
list1[ 2 ] =  300 
print(list1) #[1, 3, 300, 7, 100] 

#通過循環用下標遍歷列表元素
for index  in  range(len(list1)):
    print(list1[ index ])

#通過for循環遍歷列表元素
for elem  in  list1 :
    print(elem)

#通過enumerate函數處理列表之後再遍歷可以同時獲得元素索引和值
for index , elem  in  enumerate(list1):
    print(index , elem)

list1  = [ 1 , 3 , 5 , 7 , 100 ]

#添加元素
list1.append ( 200 )
list1.insert ( 1 , 400 )

#合併兩個列表
# list1.extend([1000, 2000]) 
list1+= [ 1000 , 2000 ]
print( list1 ) # [1, 400, 3, 5, 7, 100, 200, 1000, 2000] 
print( len ( list1 )) # 9

#先通過成員運算判斷元素是否在列表中,如果存在就刪除該元素
if  3  in  list1 :
	list1.remove ( 3 )
if  1234  in  list1 :
    list1.remove ( 1234 )
print ( list1 ) # [1, 400, 5, 7, 100, 200, 1000, 2000] 

#從指定的位置刪除元素
list1.pop ( 0 )
list1.pop ( len ( list1 ) -  1 )
print ( list1) # [400, 5, 7, 100, 200, 1000] 

#清空列表元素
list1.clear ()
print ( list1 ) # []
 
fruits  = [ 'grape' , 'apple' , 'strawberry' , 'waxberry' ]
fruits  += [ 'pitaya' , 'pear' , 'mango' ]

#列表切片
fruits2  =  fruits [ 1 : 4 ]
print ( fruits2 ) # apple strawberry waxberry 

#可以通過完整切片操作來複製列表
fruits3  =  fruits [:]
print ( fruits3 ) # ['grape', 'apple', 'strawberry', 'waxberry','pitaya', 'pear', 'mango']
fruits4  =  fruits [ - 3 : - 1 ]
print ( fruits4 ) # ['pitaya', 'pear'] 

#可以通過反向切片操作來獲得倒轉後的列表的拷貝
fruits5  =  fruits [:: - 1 ]
print ( fruits5 ) # ['mango', 'pear', 'pitaya', 'waxberry', 'strawberry', 'apple', 'grape']     

# sorted函數返回列表排序後的拷貝不會修改傳入的列表
list1  = [ 'orange' , 'apple' , 'zoo' , 'internationalization' , 'blueberry' ]
list2  =  sorted ( list1 )

#函數的設計就應該像sorted函數一樣盡可能不產生副作用
list3  =  sorted ( list1 , reverse = True )

#通過key關鍵字參數指定根據字符串長度進行排序而不是默認的字母表順序
list4  =  sorted ( list1 , key = len )
print ( list1 )
print ( list2 )
print ( list3 )
print ( list4 )

#給列表對象發出排序消息直接在列表對像上進行排序
list1 . sort ( reverse = True )
print ( list1 )
 

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *