Advertisement

108. isdigit()方法-判断字符串是否只由数字组成

阅读量:

108. isdigit()方法-判断字符串是否只由数字组成

【目录】

文章目录

  • 108. isdigit()方法-判断字符串是否只由数字组成
    • 1. isdigit()方法概述
    • 2. 判断输入的字符串是否全为数字
    • 3. 判断输入的邮编是否全为数字
    • 4. 在数字转换为整型前进行判断

【正文】

1. isdigit()方法概述

【功能】

isdigit()是Python中的一个字符串方法。

作用是判断字符串是否只由数字组成

【语法】

复制代码
    字符串.isdigit()
    
    
    python
    
    

【温馨提示】

括号内不需要提供参数。

【返回值】

如果字符串中只包含数字,则返回True,否则返回False。

2. 判断输入的字符串是否全为数字

【代码示例】

复制代码
    str1 = "12345"
    str2 = "abc123"
    
    # isdigit()函数用于检查字符串是否只包含数字字符
    # 语法:字符串.isdigit()
    # 字符串"12345"只包含数字字符,则返回True
    # 字符串"abc123"包含数字也包含英文字符,返回False
    print(str1.isdigit())  # 输出:True
    print(str2.isdigit())  # 输出:False
    
    
    python
    
    

【终端输出】

复制代码
    True
    False
    
    

3. 判断输入的邮编是否全为数字

【代码示例】

复制代码
    # 无限循环,当条件为True时,会一直执行循环体内的代码
    while True:
    # 接收用户输入的邮编,并将其赋值给变量str1
    str1 = input("请输入邮编:")
    # 使用字符串的isdigit()方法来判断用户输入的邮编是否只包含数字
    # 判断结果赋值给变量user_input
    # 如果邮编只包含数字,则返回True,否则返回False
    user_input = str1.isdigit( )
    # 如果邮编只包含数字,则返回True,执行if下面的代码
    if  user_input == True:
        print("输入正确!")
        # break用于跳出循环,即结束程序的执行
        break
    # 如果用户输入的邮编不只包含数字,则执行下面的代码块
    else:
        print("邮编应全为数字,您输入的邮编包含其它字符,请重新输入!")
    
    
    python
    
    
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-16/agC81xHb7yZiRhm3IzMLrU0VOFnX.png)

这段代码的作用是不断循环,直到用户输入的邮编只包含数字为止。

如果用户输入的邮编包含其他字符,则会提示重新输入。

4. 在数字转换为整型前进行判断

【代码示例】

复制代码
    # 获取用户输入的字符串
    # input接收的内容数据类型为字符串类型
    str1 = input("请输入数字:")
    # 用int函数将字符串转换为整数并打印出来
    num = print(int(str1))
    
    
    python
    
    

【终端输出】

复制代码
    ValueError: invalid literal for int() with base 10: '安迪'
    
    

终端输入:安迪
程序报错:invalid literal for int() with base 10: '安迪'意思是安迪是无效的int文本。

将数字转换为整型时,如果用户输入的不是数字,那么在使用int( )函数进行转换时将出现错误提示。

此时可以通过isdigit( )判断用户输入的是否为全数字,

如果是数字则转换为整型。

否则提示用户重新输入。

代码优化如下:

【代码示例】

复制代码
    # 无限循环,当条件为True时,会一直执行循环体内的代码
    while True:
    # 接收用户输入的数字,并将其赋值给变量str1
    str1 = input("请输入数字:")
    # 使用字符串的isdigit()方法来判断输入是否全为数字
    # 判断结果赋值给变量user_input
    # 如果邮编只包含数字,则返回True,否则返回False
    user_input = str1.isdigit( )
    # 如果只包含数字,则返回True,执行if下面的代码
    if  user_input == True:
        # 用int函数将字符串转换为整数
        num = int(str1)
        print(num)
        # break用于跳出循环,即结束程序的执行
        break
    # 如果用户输入的不只包含数字,则执行下面的代码块
    else:
        print("不是数字,请重新输入!")
    
    
    python
    
    
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-16/4YDvBC8ygbQlUhFJmkd061GKzcis.png)

全部评论 (0)

还没有任何评论哟~