小白教程

 找回密码
 立即注册
查看: 8863|回复: 5

[已解决]Python求助

[复制链接]

2

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2021-3-9 17:23:14 | 显示全部楼层 |阅读模式
  1. username = input()
  2. password = input()

  3. if username == 'Kate' and password == 666666:
  4.     print('登录成功!')
复制代码
为什么print语句不执行
最佳答案
2021-4-19 22:59:17
原因:你input输入的 666666,input返回后
是:字符串类型的 "666666"
而不是:你以为的,int整数的 666666

想要得到int整数类型的,可以用强制转换(确保输入的值的确是int类型的字符串,否则会报错)

即,把代码:
  1. password = input()
复制代码

改为:
  1. passwordStr = input()
  2. password = int(passwordStr)
复制代码
回复

使用道具 举报

0

主题

1

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2021-3-19 04:12:30 | 显示全部楼层
如果愿意在if上面打印一下password和username的类型,你就会发现惊喜
回复

使用道具 举报

2

主题

3

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2021-3-27 07:42:01 | 显示全部楼层
password 也是字符串, 不是整数. 手工输入的一切都是字符
password 也是字符串, 不是整数. 手工输入的一切都是字符
回复

使用道具 举报

1

主题

3

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2021-4-2 23:29:44 | 显示全部楼层
因为input()接收的默认是字符串,所以if 判断那里password 不等于整数类型的666666,所以不会向下执行,因为没有else:所以什么都不会打印,改成这样就可以了
  1. username = input()
  2. password = int(input())

  3. if username == 'Kate' and password == 666666:   
  4.     print('登录成功!')
复制代码
回复

使用道具 举报

0

主题

2

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2021-4-8 20:42:03 | 显示全部楼层
  1. username = input()
  2. password = input()



  3. if username == 'Kate' and password == '666666':
  4.     print('登录成功!')

  5. print(type(username),type(password),type(666666),type('666666'))#这行可以帮助你理解
复制代码
回复

使用道具 举报

0

主题

2

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2021-4-19 22:59:17 | 显示全部楼层 &
原因:你input输入的 666666,input返回后
是:字符串类型的 "666666"
而不是:你以为的,int整数的 666666

想要得到int整数类型的,可以用强制转换(确保输入的值的确是int类型的字符串,否则会报错)

即,把代码:
  1. password = input()
复制代码

改为:
  1. passwordStr = input()
  2. password = int(passwordStr)
复制代码
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|小白教程 ( 粤ICP备20019910号 )

GMT+8, 2024-9-20 15:01 , Processed in 2.372016 second(s), 29 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

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