`eval` 是 Python 的一个内置函数,用于执行一个字符串表达式,并返回表达式的值。`eval` 函数的基本语法如下:
```python
eval(expression, globals=None, locals=None)
```
`expression`:一个字符串,表示要执行的 Python 表达式。
`globals`:可选参数,表示全局命名空间,如果提供,必须是一个字典对象。
`locals`:可选参数,表示局部命名空间,如果提供,可以是任何映射对象。
如果只提供 `globals` 参数,`locals` 将默认为 `globals`。
`eval` 函数可以用于将字符串转换为列表、元组或字典,并计算表达式的值。下面是一些使用 `eval` 函数的示例:
1. 字符串转换为列表:
```python
a = "[1, 2, 3, 4, 5]"
b = eval(a)
print(type(b)) 输出: print(b) 输出:[1, 2, 3, 4, 5] ``` 2. 字符串转换为字典: ```python a = "{ 'name': 'guo', 'age': 25 }" b = eval(a) print(type(b)) 输出: print(b) 输出:{'name': 'guo', 'age': 25} ``` 3. 字符串转换为元组: ```python a = "(1, 2, 3, 4, 5)" b = eval(a) print(type(b)) 输出: print(b) 输出:(1, 2, 3, 4, 5) ``` 4. 计算表达式的值: ```python x = 4 print(eval("3 * x")) 输出:12 g = {'a': 4} print(eval("a + 1", g)) 输出:5 ``` 需要注意的是,`eval` 函数具有安全风险,因为它可以执行任何有效的 Python 代码,所以使用时应该非常谨慎。