作者yeuan (心要够坚定)
看板Python
标题Re: [问题] 负数如何进回圈判断?
时间Thu Feb 14 08:47:54 2019
s = input("Enter a number: ")
try:
print(float(s) * -1)
except:
print("Your input should be a number.")
※ 引述《shentotto (无名火)》之铭言:
: 各位高手好小弟菜鸡在练习习题时碰壁了
: 书里的题目是这样:
: 当你输入正数时输出负数,输入负数时转成正数,如果你输入非数字时输出"必须为数字"
: http://i.imgur.com/lLGL13w.jpg
: 图片
: ss = input("请输入数字")
: if ss.isdigit():
: if ss > 0:
: print(int(ss) * -1)
: elif ss < 0:
: print(int(ss) * -1)
: else:
: print("0")
: else:
: print("必须为数字")
: 书上并没有教如何分字串和数字判断的语法
: 所以在网路上找到.isdigit指令(单纯抓数字)
: 可是这指令连负号都挡,这一挡造成我负数直接被踢掉
: 求解铃人解惑
: -----
: Sent from JPTT on my HTC_M9u.
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 67.249.65.90
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1550105277.A.FD7.html
1F:推 talltallyo: float的地方改用eval会不会比较好呢? 02/14 10:38
2F:→ uranusjr: 不会 02/14 11:49
3F:→ djshen: user随便输入的东西你敢eval? 02/14 11:50
4F:推 Raymond0710: 别乱用 eval, user输入个rm -rf / 就惨了 02/15 09:44
5F:推 talltallyo: 感谢各位大大! 02/15 10:53
6F:推 shentotto: 袜靠 大大你这指令好猛喔,我想了好几个小时打出来的 02/18 17:04
7F:→ shentotto: 标点符号还会发生错误 02/18 17:04
9F:推 shentotto: 只有基本的字母和正负数字判断的功能而已 02/18 17:12