网站首页 > 技术文章 正文
今天我们学习Python内置的eval()函数。eval()函数解析传递给该函数的表达式,并在程序中运行python表达式(代码)。听起来挺抽象,简单点说,就是eval()接收一个字符串,然后把两边的引号或双引号去掉,最后执行已经去掉双引号或双引号的表达式。例如:
a='9*5'
eval(a)
返回:45。就是去掉引号,然后计算9*5,等于45。
例如:
a='hello'
eval(a)
返回:NameError: name 'hello' is not defined。去完括号剩下了hello,把这个hello当作了变量,然后发现未定义,所以就报错了。
看起来用处不大,但如果结合其他函数,尤其是input()就发挥出作用了。
前面有一个猜数字的游戏(简单学Python——编写一个程序(猜数字)),要求输入整数进行判断。今天增加点儿复杂性,可以输入小数。这个时候是不是条件反射的想到了——要用if判断一下input接收的是小数还是整数吧。有了eval(),就省略了判断这一步,下面看代码:
import random
a=random.randint(0,49)+random.uniform(0, 1)#生成一个0-50之间的小数
b=eval(input("请输入0-50之间的一个数,可以是小数,输入完毕请按回车键:"))
i=0
while 1:#由于1肯定为True,所以while这儿一起运行循环,直到后面出现break。
i=i+1
#判断的标准为:只要离a在±0.5范围内就算对。
if b-a>0.5:
b=eval(input("太大了,请重新输入:"))
elif b-a<-0.5:
b=eval(input("太小了,请重新输入:"))
else:
print(f"太棒了,你猜的{b}合格!精确答案为{a},游戏结束!你一共猜了{i}次")#这儿是格式化输出
break#猜对数字,强行跳出循环。
- 上一篇: 【全网最全】Python 基础(一):入门必备知识
- 下一篇: Python中如何写注释
猜你喜欢
- 2024-12-13 Python数据类型字符串的几种表示形式
- 2024-12-13 python 基础语法详解(入门必读)
- 2024-12-13 轻松掌握!Python 基本语法与核心数据类型全解析
- 2024-12-13 Python注释方式有哪些
- 2024-12-13 Word 神器 python-docx
- 2024-12-13 万字干货,Python语法大合集,一篇文章带你入门
- 2024-12-13 Python之open()函数
- 2024-12-13 编程语言python:数据类型
- 2024-12-13 Python基础语法到高级概念
- 2024-12-13 Python字符串单引号('...')和双引号("...")的区别
- 05-25Python 3.14 t-string 要来了,它与 f-string 有何不同?
- 05-25Python基础元素语法总结
- 05-25Python中的变量是什么东西?
- 05-25新手常见的python报错及解决方案
- 05-2511-Python变量
- 05-2510个每个人都是需要知道Python问题
- 05-25Python编程:轻松掌握函数定义、类型及其参数传递方式
- 05-25Python基础语法
- 257℃Python短文,Python中的嵌套条件语句(六)
- 257℃python笔记:for循环嵌套。end=""的作用,图形打印
- 256℃PythonNet:实现Python与.Net代码相互调用!
- 251℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 251℃Python实现字符串小写转大写并写入文件
- 106℃原来2025是完美的平方年,一起探索六种平方的算吧
- 90℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 81℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)