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

文摘   教育   2024-04-17 23:21   云南  


【目录】


  • 1. isdigit()方法概述

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

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

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


【正文】

1. isdigit()方法概述

【功能】

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

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

【语法】

字符串.isdigit()

【温馨提示】

括号内不需要提供参数。

【返回值】

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

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

【代码示例】

str1 = "12345"
str2 = "abc123"

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

【终端输出】

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("邮编应全为数字,您输入的邮编包含其它字符,请重新输入!")

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

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

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

【代码示例】

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

【终端输出】

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学习笔记
python学习笔记,适合初学者。
 最新文章