鱼C论坛

 找回密码
 立即注册
查看: 1479|回复: 1

[已解决]Python字符串使用eval函数时关于+和*的疑惑

[复制链接]
发表于 2021-3-3 18:47:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
a=eval('2'+'5*2')
print(a)
在此代码中数字均为字符串类型,那么字符串类型的结合顺序在默认情况下都是从左向右的吗?
还是说使用eval函数的情况下先合并字符串再进行正常的加减乘除,那么为什么不将2直接转换为有效数字然后再进行加减乘除呢?
又或是eval函数将'2'+'5看作了字符串表达类型,然后先进行了合并将合并后的字符串转换为有效数字,然后再进行运算?
求助解答,非常感谢!
最佳答案
2021-3-3 18:56:12
'2'和'2*5'都是字符串
这里将'2'+'5*2'作为参数本身是一个整体,会先将字符串合并
eval('2'+'5*2')
eval('25*2')
50
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-3-3 18:56:12 | 显示全部楼层    本楼为最佳答案   
'2'和'2*5'都是字符串
这里将'2'+'5*2'作为参数本身是一个整体,会先将字符串合并
eval('2'+'5*2')
eval('25*2')
50
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-16 07:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表