亲宝软件园·资讯

展开

Python eval()函数使用

W_chuanqi 人气:0

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.

总结

加载全部内容

相关教程
猜你喜欢
用户评论