python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python eval()函数使用

Python中eval()函数的详细使用教程

作者:W_chuanqi

eval函数在Python中具有非常重要的地位,熟练的使用eval函数能够为我们的Python编程提供很多的便利之处,下面这篇文章主要给大家介绍了关于Python中eval()函数的详细使用,需要的朋友可以参考下

eval()函数

eval() 函数用来执行一个字符串表达式,并返回表达式的值。

语法

eval(expression[, globals[, locals]])

expression – 表达式。
globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals–变量作用域,局部命名空间,如果被提供,可以是任何映射对象。

返回值:返回表达式计算结果。

实例

我们在从键盘输入数据时,Python接收的是字符串类型,这时我们可以使用eval()函数,将输入的数据进行还原

实例1

n = input()
m = eval(input())
# type()函数可以用来检测数据类型
print(type(n))
print(type(m))
#利用eval()将字符串类型转为整形
print(type(eval(n)))

输出结果:

使用eval()函数,将字符串还原为数字类型,和int()函数的作用类似

实例2

# 输入[1,2,3,4]
m = input()  # 得到一个字符串
n = eval(input())  # 得到一个列表
print(type(m))
print(type(n))
print(type(n[0]))

输出结果

将输入的字符串转为对应的数据类型,列表、元组等数据类型都可以使用这种方式输入

实例3

# 表达式
s1 = '3*7'
s2 = 'pow(2,3)'
n = eval(s1)
m = eval(s2)
print(n, m)

输出结果:

对表达式的结果进行计算,返回计算后的值

附:使用例子

举一个代码随想录里一个解答的例子:

second_num = 1
item = + 
first_num = 2
int(eval(f'{second_num} {item} {first_num}')) # 等价于本1 + 2

其中,格式化字符串常量(formatted string literals)是 Python 3.6 新引入的一种字符串格式化方法,主要目的是使格式化字符串的操作更加简便。

f-string在形式上是以 f 或者 F 修饰符引领的字符串(f’xxx’ 或 F’xxx’),以大括号 {} 标明被替代的字段。

另一个例子:

# 创建
my_dict = {'name':'Hider',
           'age':'100'}

print(f"My name is {my_dict['name']}, I'm {my_dict['age']}.")
# My name is Hider, I'm 100.

总结

到此这篇关于Python中eval()函数使用的文章就介绍到这了,更多相关Python eval()函数使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文