作者SamuelKL (八云老公)
看板Python
标题[问题] 新手请教输入范围限制
时间Fri Jun 21 13:33:55 2019
各位大大不好意思
菜逼八小弟有一个小问题想请教
现在要设立一个清单让使用者输入10个数字,范围1~1000
我自己耍白痴没把当时写出来的code记下来,结果现在写不出来= =
这是目前的样子
s = []
j = 11
for i in range (1, j):
var1 = int(input("请输入整数 =>"))
if var1 < 1 and var1 > 1000 :
print("范围错误,请重新输入")
j = j+1
else:
s.append(var1)
print(s)
我现在是用for,我只记得当时说要用while回圈,但我完全忘记怎麽写了
请各位救救我,顺便再喷一下我的愚蠢
谢谢大家
--
知,乐之权舆,苦之滥觞
婴儿之啼乃为故悉此道苦
是故嚎满室,涕泪横
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 106.105.212.244 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1561095237.A.96D.html
1F:推 aaron880221: j=11拿掉,然後把for回圈那行改成while len(s)!=10: 06/21 13:54
谢谢你
不过我这样改了以後
发现超过范围的数字仍然会被写入清单内
好像程式根本没有读到if句一样
麻烦您了
2F:→ aaron880221: 然後再把原本for回圈里面的j删掉就好 06/21 13:55
※ 编辑: SamuelKL (223.139.109.213 台湾), 06/21/2019 14:06:00
3F:推 aaron880221: and要改成or 06/21 14:09
想请问为什麽要改成or
而不能用and呢?
成功了 谢谢大大
※ 编辑: SamuelKL (223.139.109.213 台湾), 06/21/2019 14:19:16
※ 编辑: SamuelKL (223.139.109.213 台湾), 06/21/2019 14:20:06
4F:推 jameschiou: AND和OR的真值表可以看一下就知道为什麽了~ 06/21 15:17
5F:→ niceguy: 怎麽可能有数字同时大於1000又小於1,难怪不成立 06/21 15:50
应该是打错了XD 我电脑上是对的
6F:→ renshin: 翻成中文就知道了,or(或着) , and(而且) 06/21 15:54
※ 编辑: SamuelKL (223.139.109.213 台湾), 06/21/2019 17:22:24
7F:推 bugbug777: python 可以这样写 1 < var < 1000,某方面来说这样效 06/21 18:06
8F:→ bugbug777: 能比较好也比较易读 06/21 18:06
9F:推 yeuan: 是一定要输满10个数字呢?还是错误也算一次? 06/23 12:49