为啥没名字能起 发表于 2020-6-3 17:58:26

为什么这么写会报错?(纯新手第一次接触)

temp = input("请输入您的姓名:")
name = int(temp)
if name == 十三:
    print('你好'+name+'很高兴认识你^_^')
else:
    print('请输入正确的姓名!')



只是对视频中给的案例进行了细微的改动,就显示错误

temp = input("请输入您的姓名:")
name = int(temp)
if name==1:
    print('你好很高兴认识你^_^')
else:
    print('请输入正确的姓名!')


但是如果把'十三'换成了'1',就可以进行交互,这是为什么啊?来个d大的回答下。是因为不支持中文么?(狗头)

xiaosi4081 发表于 2020-6-3 18:00:03

本帖最后由 xiaosi4081 于 2020-6-3 18:12 编辑

temp = input("请输入您的姓名:")

while temp != '十三':
      temp = input('请输入正确的姓名:')
print('你好'+temp+','+'很高兴认识你^_^')

   
1.十三要加引号
2.为什么要把字符串转成整形?
3.还有,if...else只会执行一次
4.你这语文学的...

这可能不是你想要的效果,看看这个:
temp = input("请输入您的姓名:")

if temp == '十三':
      temp = input('请输入正确的姓名:')
else:
        print('你好'+temp+','+'很高兴认识你^_^')

   

求最佳{:10_254:}

青出于蓝 发表于 2020-6-3 18:00:46

因为十三要加引号,这是字符串

青出于蓝 发表于 2020-6-3 18:01:19

不对,字符串不能int整形

为啥没名字能起 发表于 2020-6-3 18:01:49

xiaosi4081 发表于 2020-6-3 18:00
1.

还是不行啊

Twilight6 发表于 2020-6-3 18:01:52

int(temp) 是将 字符串转为 整型 也就是整数 ,而你想想 我们怎么把一个汉字转为数字呢,显然不可以,所以会报错

而且 十三 要加上引号,这样才代表是字符串
temp = input("请输入您的姓名:")
if temp == '十三':
    print('你好'+temp+'很高兴认识你^_^')
else:
    print('请输入正确的姓名!')


青出于蓝 发表于 2020-6-3 18:02:09

所以把int以及对应括号去掉或者改成str就可以了
int是整形,字符串不能整形

xiaosi4081 发表于 2020-6-3 18:03:06

为啥没名字能起 发表于 2020-6-3 18:01
还是不行啊

这下可以了

青出于蓝 发表于 2020-6-3 18:04:23

temp = input("请输入您的姓名:")
name = temp
if name == 1:
    print('你好'+name+'很高兴认识你^_^')
else:
    print('请输入正确的姓名!')
这段代码,把1改成十三也没问题

xiaosi4081 发表于 2020-6-3 18:05:14

青出于蓝 发表于 2020-6-3 18:04
这段代码,把1改成十三也没问题

还有,if只会执行一次

青出于蓝 发表于 2020-6-3 18:08:20

xiaosi4081 发表于 2020-6-3 18:05
还有,if只会执行一次

执行一次就行啊

Twilight6 发表于 2020-6-3 18:08:54

xiaosi4081 发表于 2020-6-3 18:05
还有,if只会执行一次

萌新 第一次接触还不会循环正常

xiaosi4081 发表于 2020-6-3 18:10:19

Twilight6 发表于 2020-6-3 18:08
萌新 第一次接触还不会循环正常

对,先把他这个弄好再说

青出于蓝 发表于 2020-6-3 18:10:43

xiaosi4081 发表于 2020-6-3 18:09
抱歉,理解错了

嘿嘿,如果想多次的话while可实现

xiaosi4081 发表于 2020-6-3 18:11:32

青出于蓝 发表于 2020-6-3 18:10
嘿嘿,如果想多次的话while可实现

萌新 第一次接触还不会循环正常

为啥没名字能起 发表于 2020-6-3 18:11:47

青出于蓝 发表于 2020-6-3 18:04
这段代码,把1改成十三也没问题

我试了一下……还是不行

xiaosi4081 发表于 2020-6-3 18:13:02

为啥没名字能起 发表于 2020-6-3 18:11
我试了一下……还是不行

我的代码行不行?

青出于蓝 发表于 2020-6-3 18:13:10

为啥没名字能起 发表于 2020-6-3 18:11
我试了一下……还是不行

temp = input("请输入您的姓名:")
name = temp
if name == '1':
    print('你好'+name+'很高兴认识你^_^')
else:
    print('请输入正确的姓名!')

青出于蓝 发表于 2020-6-3 18:13:43

为啥没名字能起 发表于 2020-6-3 18:11
我试了一下……还是不行

sorry,低级错误,现在输入1试试

青出于蓝 发表于 2020-6-3 18:14:52

xiaosi4081 发表于 2020-6-3 18:11


原谅我没看见
页: [1] 2
查看完整版本: 为什么这么写会报错?(纯新手第一次接触)