原数据
lambda函数处理
我之前写了各种if substr函数,各种报错
正确到热泪盈眶的函数
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)
报错函数
# 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() 函数
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
补充:python中的eval函数及求四则运算
输入描述:
输入一个表达计算式
输出描述:
得到输出结果
例子
输入:3+2*{1+2*[-4/(8-6)+7]}
输出:25
代码:
功能1:
eval()函数能将字符串string对象转化为有效的表达式参与求值运算,并返回计算结果
while True: try: s = str(input()) print(eval(s)) except: break
功能2:
eval()函数去掉参数最外侧引号并执行余下语句的函数
print(eval(\"\'Hello world\'\")) # 输出 Hello world #print(eval(\"Hello world\")) # 因为eval()函数去掉外部的双引号后,成为变量Hello world,而之前没有定义过该变量,所以会报错。 print(eval(\'\"1+2\"\')) # 输出1+2
以上为个人经验,希望能给大家一个参考,也希望大家多多支持自学编程网。