设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 12210|回复: 13
打印 上一主题 下一主题

萌新编那个问数字的小程序有问题,求救

[复制链接]

2

主题

0

好友

30

积分

新手上路

Rank: 1

跳转到指定楼层
楼主
发表于 2018-1-4 15:35:28 |只看该作者 |正序浏览
本帖最后由 08ms_xxy 于 2018-1-5 09:21 编辑

本人萌新,照着教程做下来,结果,print打印文字的结果这里出了点问题,查了半天觉得改无可改了。。。百度也找了找,还是无果,只好求助前辈们。。

1A36E}GKCR14P)~$LQR205Q.png (17.37 KB, 下载次数: 829)

这是我做完print无效的图

这是我做完print无效的图

ZW8~4VLNQ50774L_INY(MA4.png (35.34 KB, 下载次数: 816)

这是教程的图,哪来对比一下

这是教程的图,哪来对比一下

1515115603.jpg (84.28 KB, 下载次数: 784)

2次

2次

回复

使用道具 举报

0

主题

0

好友

8

积分

新手上路

Rank: 1

14#
发表于 2018-1-12 20:00:20 |只看该作者
# -*- coding:UTF-8 -*-
from random import randint
a = randint(1,100)
# print (a)
print("CAI YI XIA")
duile = False
while duile == False:
        b = int(input())

        if b < a:
                print("smaill")
        elif b > a:
                print("big")
        elif b == a:
                print("duile")
                duile = True

回复

使用道具 举报

6

主题

2

好友

654

积分

实习版主

Rank: 7Rank: 7Rank: 7

13#
发表于 2018-1-5 16:59:49 |只看该作者
08ms_xxy 发表于 2018-1-5 15:45
还真的。。和空行也没关系,多谢指教,以后if我就缩进,,

不是if就缩进,要看你代码内容的  缩进的代码是包含在上一句之中的。。  这个你得多看看
回复

使用道具 举报

2

主题

0

好友

30

积分

新手上路

Rank: 1

12#
发表于 2018-1-5 15:45:48 |只看该作者
TED 发表于 2018-1-5 13:52
这个和你from和print之间空行没有关系,你的第一个截图里面 while之后的内容格式都是错的,answer=input( ...

还真的。。和空行也没关系,多谢指教,以后if我就缩进,,
回复

使用道具 举报

0

主题

0

好友

12

积分

新手上路

Rank: 1

11#
发表于 2018-1-5 13:52:43 |只看该作者
08ms_xxy 发表于 2018-1-5 09:20
。。。我调试了一下,弄好了,原因是因为我前面from和print语句之间没有空行,但是为什么我还是不懂,我先 ...

while True:
(这意味着下面的代码将无限循环,一直运行下去,如果没有break操作,是跳不出循环的。)
换而言之,你代码中在if语句之外的“a=Ture”是从未运行的,这会导致你的程序没法停止下来。(除非报错或者是关闭窗口)
关闭窗口就不说了。报错的话,你输入一个字符就行了(只要不是数字)。
无限循环 第一张图片,哪怕出现了Bingo,还是可以继续进行下去。(正常程序弹出Bingo,这个游戏就结束了)
输入字符,报错停止 第二张图片,输入字符报错停止。(虽然正常程序也可以这样停止,不是大家本意,是因为这个代码不健壮,可以完善的)
回复

使用道具 举报

6

主题

2

好友

654

积分

实习版主

Rank: 7Rank: 7Rank: 7

10#
发表于 2018-1-5 13:52:20 |只看该作者
08ms_xxy 发表于 2018-1-5 09:20
。。。我调试了一下,弄好了,原因是因为我前面from和print语句之间没有空行,但是为什么我还是不懂,我先 ...

这个和你from和print之间空行没有关系,你的第一个截图里面 while之后的内容格式都是错的,answer=input()要新开一行,while里的所有语句都要缩进(也就是说if语句,a=True这些开头要有四个空格的缩进),你的'2次'截图里这些格式是正确的 所以能运行了 你可以试下把空行删了 仍然可以运行的。

注意,python里面是靠命令语句的缩进来分隔代码的。
回复

使用道具 举报

2

主题

0

好友

30

积分

新手上路

Rank: 1

9#
发表于 2018-1-5 09:20:25 |只看该作者
本帖最后由 08ms_xxy 于 2018-1-5 09:23 编辑
天凉好个秋 发表于 2018-1-4 16:49
需要修改两个地方:
1、输入input(),输入的东西是字符串,没办法做比较判断。解决办法:int(input() ...

。。。我调试了一下,弄好了,原因是因为我前面from和print语句之间没有空行,但是为什么我还是不懂,我先把图搞上来(图在1楼,叫2次那个,你们看下输出的区别,捂脸),以后有新手玩pythom代码正确实现不了功能可以看看命令之间的空行。。希望对别人有帮助吧我搞个我调完的图,你们可看到我的a=True还是在if语句之外,只是前面语句空行了,捂脸,PS:我的python是3.4版本C:\Users\Administrator.6IJJAVXCYV14OLY\Desktop
回复

使用道具 举报

2

主题

0

好友

30

积分

新手上路

Rank: 1

8#
发表于 2018-1-5 08:53:24 |只看该作者
天凉好个秋 发表于 2018-1-4 16:49
需要修改两个地方:
1、输入input(),输入的东西是字符串,没办法做比较判断。解决办法:int(input() ...

感谢感谢~
回复

使用道具 举报

0

主题

0

好友

10

积分

新手上路

Rank: 1

7#
发表于 2018-1-4 18:11:05 |只看该作者
本帖最后由 456 于 2018-1-4 18:12 编辑

支持楼上!
回复

使用道具 举报

0

主题

0

好友

12

积分

新手上路

Rank: 1

6#
发表于 2018-1-4 16:49:02 |只看该作者
需要修改两个地方:
1、输入input(),输入的东西是字符串,没办法做比较判断。解决办法:int(input())
2、将最后一行代码a=True放在最后一个if语句之中。
QQ图片20180104164605.png

建议:这里可以使用if-elif-else来判断。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-22 08:51 , Processed in 0.017546 second(s), 24 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部