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

作者:W_chuanqi 时间:2023-11-22 15:51:39 

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)))

输出结果:

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

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

实例2

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

输出结果

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

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

实例3

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

输出结果:

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

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

附:使用例子

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

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.

来源:https://blog.csdn.net/W_chuanqi/article/details/124397143

标签:python,eval(),函数
0
投稿

猜你喜欢

  • Python文件处理

    2022-08-08 10:22:01
  • MySql数据库之alter表的SQL语句集合

    2024-01-21 05:31:24
  • Golang 使用http Client下载文件的实现方法

    2023-07-21 07:32:23
  • 浅谈PHP中的Trait使用方法

    2023-11-08 09:25:33
  • Django实现文件上传下载

    2022-03-17 18:42:48
  • pycharm中venv文件夹自定义处理方式图解

    2022-06-28 22:46:53
  • setTimeout()与setInterval()方法区别介绍

    2024-04-22 13:24:09
  • Python实现批量检测HTTP服务的状态

    2023-02-21 12:50:55
  • 利用JavaScript做数独的完整实现过程

    2024-02-24 02:10:47
  • win7下MySql 5.7安装配置方法图文教程

    2024-01-20 21:04:12
  • Python3 能振兴 Python的原因分析

    2021-01-11 06:44:12
  • tensorflow使用指定gpu的方法

    2022-10-23 16:00:31
  • python中的try except与R语言中的tryCatch异常解决

    2021-10-22 02:24:48
  • Python进程的通信Queue、Pipe实例分析

    2021-11-22 13:50:44
  • yii框架中的Url生产问题小结

    2023-07-20 14:08:45
  • Python中的CURL PycURL使用例子

    2023-05-13 04:14:31
  • AJAX实战实现级联选择

    2009-08-21 12:27:00
  • SQL学习笔记八 索引,表连接,子查询,ROW_NUMBER

    2011-09-30 11:18:24
  • PDO::errorInfo讲解

    2023-06-06 01:51:53
  • SQL Server数据库对服务器的需求

    2010-06-11 13:52:00
  • asp之家 网络编程 m.aspxhome.com