鱼C论坛

 找回密码
 立即注册
查看: 1209|回复: 2

[已解决]新手,怎样防止在输入非数字的时候报错?

[复制链接]
发表于 2020-7-23 10:22:36 | 显示全部楼层 |阅读模式

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

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

x
temp = input('Pls enter a number: ')
number = int(temp)

能不能在用户输入非数字的时候print一句 ‘’请输入数字而非字符串‘?
最佳答案
2020-7-23 10:24:18
本帖最后由 Twilight6 于 2020-7-23 10:25 编辑


用字符串方法 isdigit() 来判断字符串中是否为纯数字字符串,若是 返回 True ,不是 返回 False
temp = input('Pls enter a number: ')
while not temp.isdigit():
    temp = input('Sorry!Your input is not digital,Pls enter agant:')
number = int(temp)
print(number)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-23 10:24:18 | 显示全部楼层    本楼为最佳答案   
本帖最后由 Twilight6 于 2020-7-23 10:25 编辑


用字符串方法 isdigit() 来判断字符串中是否为纯数字字符串,若是 返回 True ,不是 返回 False
temp = input('Pls enter a number: ')
while not temp.isdigit():
    temp = input('Sorry!Your input is not digital,Pls enter agant:')
number = int(temp)
print(number)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-23 10:26:14 | 显示全部楼层
s 为字符串

s.isalnum()  所有字符都是数字或者字母,为真返回 True,否则返回 False。

s.isalpha()   所有字符都是字母,为真返回 True,否则返回 False。

s.isdigit()     所有字符都是数字,为真返回 True,否则返回 False。

s.islower()    所有字符都是小写,为真返回 True,否则返回 False。

s.isupper()   所有字符都是大写,为真返回 True,否则返回 False。

s.istitle()      所有单词都是首字母大写,为真返回 True,否则返回 False。

s.isspace()   所有字符都是空白字符,为真返回 True,否则返回 False。
         
例如:
>>> s = 'I LOVE FISHC'
>>> s.isupper()
>>> True
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-19 20:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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