1、filter 和list
乙個列表:
fruits = ['orange', 'peach', 'durian', 'watermelon']
print(fruits[slice(1, 3)]) --最後的結果: ['peach', 'durian']
# slice(1, 3)相當於[1:3] ,也可以# slice(1, 3,2)相當於[1:3:2]
定義乙個篩選函式:
def myfilter(mystr):
return len(mystr) == 6
filter函式:
fruits2 = list(filter(myfilter, fruits))
print(fruits2) --最後的結果 ['orange', 'durian']
2、分片和索引
python中使用索引來訪問序列中的某乙個元素,如果要訪問序列中某一定範圍內的元素,可以使用分片來完成。
分片是list裡面常見的操作,使用方法:list[start:end:step],可以代替for 迴圈的一種簡單操作。
從字串到list,再到陣列都是可以使用索引和分片的。
goodslist=[['iphone', 5800], ['mac pro', 12000], ['bike', 800], ['alex python', 89], ['starbuck latte', 30], ['cap', 45], ['air conditioning', 3000], ['ipad', 4200]]
[g[0] for g in goodslist] #輸出結果是第一列資料
dic =
import pandas as pd
df = pd.dataframe(dic,index=list('abcdef'))
得到lucy的學習成績: df['lucy']
得到lucy和tom的兩個人的學習成績: df[['lucy','tom']]
# 另外索引是可以進行巢狀使用的,也就是索引後可以再次進行索引
得到lucy的a和b科目學習成績: df['lucy'][0:2]
1、# 引數預設值
# 函式定義的時候可以喲預設值
def f1(a,b,c=1): #定義這中函式的時候,注意一定把有預設值得引數放在最後,不然會報錯
return a+b+c
print(f1(0,2)) #可以傳和函式定義的引數個數不同的引數。
print(f1(c=0,b=2,a=3)) #也可以點顛倒順序
2、可變函式(引數得個數不限定)
def f2(*args):
sum = 0
for num in args:
sum += num
return sum
print((1,3,4,5))
3、關鍵字函式
如果關鍵字函式傳的是字典格式的資料,那麼一定要和函式之前**的個數保持一致。
如果傳的是key=value格式的引數,那麼直接使用函式,不用管定義的引數前面的**的個數。1、enumerate(陣列組裝成字典)
s_list=
['a'
,'b'
,'c'
]for k,v in
enumerate
(s_list):=k
newmap=)}
dict_new2=
dict
(zip
(dict_ori.values(
), dict_ori.keys())
)2、列表推導式
some_tuples =[(
1,2,
3),(
4,5,
6),(
7,8,
9)]result=
set[j for x in some_tuples for j in x]
3、多層巢狀的扁平化
1)對於知道巢狀層數以及層數一致的可以使用推導式也能:
[i for u in test_list for i in u]
2)一般的巢狀陣列資料可以採用遞迴取數:
test_list=[[
[1,2
],[3
,4]]
,[[1
,5]]
]result=
deftake_out()
:for i in items:
ifisinstance
(i,int):
else
: take_out(i)
take_out(test_list)
4、map函式和for迴圈
import re
class
cleanstr()
:def
test_sub
(value)
:return re.sub(
'[?!#]',''
,value)
defmap_test
(f,s)
: result=
for i in
map(f,s)
:return result
defclean_str
(ops,states)
: count=
0while count<
len(ops)
: states=map_test(ops[count]
,states)
count=count+
1return states
clean_ops=
[str
.strip,
str.title,test_sub]
states=
[' alabama '
,'georgia! '
,'georgia'
,'georgia'
]
cleanstr.clean_str(clean_ops,states)
python常用函式 python常用函式精講
返回值為bool型別的函式 bool是boolean的縮寫,只有真 true 和假 false 兩種取值 bool函式只有乙個引數,並根據這個引數的值返回真或者假。引數如果預設,則返回false 引數轉換使用標準的邏輯測試表示式 傳入布林型別時,按原值返回 傳入字串時,空字串返回false,否則返回...
python常用的函式
dataframe的函式 df.head 檢視資料框df的前幾行資料 df.tail 檢視資料框df的最後幾行資料 df.info 獲取資料框df的資訊 df.describe 獲取資料框df的各項統計值 df.index 檢視資料框df的行索引 df.columns 檢視資料框df的列名 df.s...
python常用函式中文 python常用函式
一 數學相關 1 絕對值 abs 1 2 最大最小值 max 1,2,3 min 1,2,3 3 序列長度 len abc len 1,2,3 len 1,2,3 4 取模 divmod 5,2 2,1 5 乘方 pow 2,3,4 2 3 4 6 浮點數 round 1 二 功能相關 1 函式是否...