鱼C论坛

 找回密码
 立即注册
查看: 1231|回复: 12

[已解决]请教关于零基础002的类型转换

[复制链接]
发表于 2020-5-1 23:35:35 | 显示全部楼层 |阅读模式

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

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

x
temp = input("输入我心里想的一个数字 ")

if temp == 8:
    print("猜对了")
else:
    print("猜错了")
print ("游戏结束")


这个例子如果把guess = int(temp)给删掉
输入8也是错的
这是为什么呢

但是课后习题的打印名字
不转化直接就可以输出名字

请问input函数输入的东西到底是什么类型呢

非常感谢

最佳答案
2020-5-1 23:40:42
因为在Python看来,字符串'8'和整型8是不一样的东西,input接受的是字符串,所以需要先int变为整型
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-5-1 23:40:42 | 显示全部楼层    本楼为最佳答案   
因为在Python看来,字符串'8'和整型8是不一样的东西,input接受的是字符串,所以需要先int变为整型
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-5-2 00:05:30 | 显示全部楼层
先说说input,这个函数是返回字符串(str)类型的,两个数要比较,类型一定要相同
所以你后面有两种改法,其一:
  1. if temp == '8' :  # 8这也加上引号,因为input返回的是字符串类型
复制代码

其二就是把input返回的值转成整型(int):
  1. temp = int(input("输入我心里想的一个数字 "))   # 这里这样就可以直接在输出时转成整型
复制代码

再讲讲其他的:
这个例子如果把guess = int(temp)给删掉
输入8也是错的
这是为什么呢

因为你前面还没删之前guess = int(temp)  是把temp转化成整型(其实就是整数)赋值给的guess
  1. if temp == 8:
复制代码

而你这判断还是用的temp而不是用guess,所以不管你删没删,你永远都不可能会对的
你应该改成:
  1. if guess == 8:
复制代码

这个时候 guess才有被后面的代码用上
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-2 00:05:33 | 显示全部楼层
老八秘制 发表于 2020-5-1 23:40
因为在Python看来,字符串'8'和整型8是不一样的东西,input接受的是字符串,所以需要先int变为整型

明白了,非常感谢这么晚还解惑
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-2 00:08:31 | 显示全部楼层
老八秘制 发表于 2020-5-1 23:40
因为在Python看来,字符串'8'和整型8是不一样的东西,input接受的是字符串,所以需要先int变为整型

不好意思将就这个贴子再请教你一个问题

比如

name = input(请输入名字)
print(“你好”,name)

这样输出结果是
你好 XXX
中间有一个空格,显得不自然,有没有办法让它不加那个空格呢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 00:11:04 | 显示全部楼层
5695585 发表于 2020-5-2 00:08
不好意思将就这个贴子再请教你一个问题

比如
  1. name = input('请输入你的姓名:')
  2. print('你好'+name)
复制代码


老八可能睡觉了,我帮你解答吧,用+号拼接就可以解决
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 00:14:06 | 显示全部楼层
5695585 发表于 2020-5-2 00:08
不好意思将就这个贴子再请教你一个问题

比如

首先你这个代码有问题,input里需要加引号,写程序不能用中文符号
你这个问题可以用sep=''来解决,例如:
  1. >>> name = input("请输入名字:")
  2. 请输入名字:小甲鱼
  3. >>> print("你好", name, sep='')
  4. 你好小甲鱼
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 00:14:41 | 显示全部楼层
Twilight6 发表于 2020-5-2 00:11
老八可能睡觉了,我帮你解答吧,用+号拼接就可以解决

你真以为我会那么早睡觉吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 00:18:20 | 显示全部楼层
老八秘制 发表于 2020-5-2 00:14
你真以为我会那么早睡觉吗

哈哈哈 老八早点休息,我溜了,最佳给你
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 06:28:35 | 显示全部楼层
老八秘制 发表于 2020-5-2 00:14
你真以为我会那么早睡觉吗

看来鱼C夜猫子多得是
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 07:27:12 | 显示全部楼层
input输出的只是字符串,而不是数字。

虽然你输入的是个数字,但是输出的只是个字符串形式的数字。

就好比你书本上写着“苹果”似的,虽然它是个苹果,但是不能拿来吃。

input输出的由于是字符串,需要转换一下,int一下,就变成了数字类型。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 07:30:38 | 显示全部楼层
Twilight6 发表于 2020-5-2 00:18
哈哈哈 老八早点休息,我溜了,最佳给你

岛   市   美   食   家
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-2 08:11:26 | 显示全部楼层
求最佳
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-21 12:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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