为了账号安全,请及时绑定邮箱和手机立即绑定

为什么t=('a')输出a,但是t=(a)输出m???求解!!

为什么t=('a')输出a,但是t=(a)输出m???求解!!

正在回答

3 回答

t=('a'),因为括号里没有逗号,系统不会把这个语句当成元组赋值,只会当成普通的赋值语句,而赋值语句中的()只是表示运算优先级,如同四则运算里 t=(1)就是t=1,()在括号内本身就是优先级运算的情况下是可以省略的,所以t=('a')实际上就是给t赋值成字符串'a' 所以这个时候输出t也就会输出字符串a .

同理,t=(a)实际上就是赋值t=a ,而如果你的代码之前对a有定义及赋值,那么输出的t就会是a的值 .  但如果前面没有定义a 那么系统就会报错告诉你找不到a

1 回复 有任何疑惑可以回复我~
t=('a')
print t


0 回复 有任何疑惑可以回复我~

t=(a)输出的应该是true 因为a为非字符串 a为真。

0 回复 有任何疑惑可以回复我~
#1

苏昊扬

大哥回答问题麻烦先测试一下自己说的对不对.都有空闲时间帮助别人了还缺那么两秒把自己给的答案运行一下么
2020-02-17 回复 有任何疑惑可以回复我~
#2

苏昊扬

布尔值的运算是判断,t=???不管后面是什么他都是赋值语句,= 是赋值是赋值是赋值,= = 才是判断,望周知
2020-02-17 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

为什么t=('a')输出a,但是t=(a)输出m???求解!!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信