原數(shù)據(jù)
lambda函數(shù)處理
我之前寫了各種if substr函數(shù),各種報錯
正確到熱淚盈眶的函數(shù)
data['Followers/Fans'] = data['Followers/Fans'].str.replace('k|K','*1000').str.replace('m|M','*1000000').fillna('0')
data['Followers/Fans'] = data['Followers/Fans'].apply(eval)
報錯函數(shù)
# def trans(x):
# x = str(x)
# x = x.strip() # 去除首尾空格
# if (x[-1] == 'k' or x[-1] == 'K') :
# return float(x[0:-1])*1000
# elif (x[-1] == 'M' or x[-1] == 'm'):
# return float(x[0:-1])*1000000
# else:
# return x
eval() 函數(shù)
eval() 函數(shù)用來執(zhí)行一個字符串表達(dá)式,并返回表達(dá)式的值。
補充:python中的eval函數(shù)及求四則運算
輸入描述:
輸入一個表達(dá)計算式
輸出描述:
得到輸出結(jié)果
例子
輸入:3+2*{1+2*[-4/(8-6)+7]}
輸出:25
代碼:
功能1:
eval()函數(shù)能將字符串string對象轉(zhuǎn)化為有效的表達(dá)式參與求值運算,并返回計算結(jié)果
while True:
try:
s = str(input())
print(eval(s))
except:
break
功能2:
eval()函數(shù)去掉參數(shù)最外側(cè)引號并執(zhí)行余下語句的函數(shù)
print(eval("'Hello world'")) # 輸出 Hello world
#print(eval("Hello world")) # 因為eval()函數(shù)去掉外部的雙引號后,成為變量Hello world,而之前沒有定義過該變量,所以會報錯。
print(eval('"1+2"')) # 輸出1+2
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Python eval函數(shù)原理及用法解析
- Python eval函數(shù)介紹及用法
- Python使用eval函數(shù)執(zhí)行動態(tài)標(biāo)表達(dá)式過程詳解
- 將python字符串轉(zhuǎn)化成長表達(dá)式的函數(shù)eval實例
- python重要函數(shù)eval多種用法解析
- 詳解python中eval函數(shù)的作用
- python3中的eval和exec的區(qū)別與聯(lián)系