python中eval()函数的用法

一、eval

1.定义

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

2.语法格式

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

参数:

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

注意:如果只给出全局变量,则局部变量默认为全局变量。

3.示例

print(eval("8*8"))
print(eval("8+9"))
print(eval('pow(2,2)'))

运行结果:

64
17
4

二、字符串转列表

str="[1,2,3,4]"
print(type(str))
list1=eval(str)
print(list1)
print(type(list1))

运行结果:

<class 'str'>
[1, 2, 3, 4]
<class 'list'>

三、字符串转字典 

str2="{'name':'mkf','age':33}"
print(type(str2))
dict1=eval(str2)
print(type(dict1))
print(dict1)

运行结果:

<class 'str'>
<class 'dict'>
{'name': 'mkf', 'age': 33}

四、字符串转元祖  

str3="(1,2,3,4)"
print(type(str3))
tuple1=eval(str3)
print(type(tuple1))
print(tuple1)

运行结果:

<class 'str'>
<class 'tuple'>
(1, 2, 3, 4)

 注意:

上面的三组例子都有一个共同点:

  字符串的格式必须和字典,元组,列表格式相同,才能进行转换

posted @ 2020-12-03 13:53  做一只热爱生活的小透明  阅读(6471)  评论(0)    收藏  举报