华域联盟 Python python eval 转换k m到乘法计算的操作

python eval 转换k m到乘法计算的操作

原数据

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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持华域联盟。

您可能感兴趣的文章:

本文由 华域联盟 原创撰写:华域联盟 » python eval 转换k m到乘法计算的操作

转载请保留出处和原文链接:https://www.cnhackhy.com/24774.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部