我之前写了各种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() 函数用来执行一个字符串表达式,并返回表达式的值。
补充:python中的eval函数及求四则运算
输入一个表达计算式
得到输出结果
输入:3+2*{1+2*[-4/(8-6)+7]}
输出:25
eval()函数能将字符串string对象转化为有效的表达式参与求值运算,并返回计算结果
while True:
try:
s = str(input())
print(eval(s))
except:
break
eval()函数去掉参数最外侧引号并执行余下语句的函数
print(eval("'Hello world'")) # 输出 Hello world
#print(eval("Hello world")) # 因为eval()函数去掉外部的双引号后,成为变量Hello world,而之前没有定义过该变量,所以会报错。
print(eval('"1+2"')) # 输出1+2
以上为个人经验,希望能给大家一个参考,也希望大家多多支持python博客。
Powered By python教程网 鲁ICP备18013710号
python博客 - 小白学python最友好的网站!