Python中判断input()输入的数据的类型

作者:芜湖起飞飛飝 时间:2023-03-14 17:02:15 

在pyhton中,经常会用到input()语句,但是input()语句输入的内容只能时字符串类型,而我们经常要输入int类型的数据等,那么就需要用到int()方法给输入的内容强制转换为int类型:

a = int(input())

但是这样就会有一个问题,一旦我输入的不是数字,而是字母、标点等,这样就会报错,因为字母灯是不能转成int类型的,所以我们就要判断一下,输入的内容为什么:

str = input()
if str.isdigit() :
a = int(str)

这样就可以判断输入的是不是数字,还是字母、符号等

方法:
str.isdigit()为True表示输入的所有字符都是数字
str.isalnum()为True表示输入的所有字符都是数字或者字母
str.isalpha()为True表示输入的所有字符都是字母
str.isdigit()为True表示输入的所有字符都是数字
str.islower()为True表示输入的所有字符都是小写
str.isupper()为True表示输入的所有字符都是大写
str.istitle()为True表示输入的所有单词都是首字母大写,像标题
str.isspace()为True表示输入的所有字符都是空白字符、\t、\n、\r

更新一下:
注意,用isdigit()来判断小数,比如3.14就会返回FALSE。
isdigit()只是判断输入的是不是纯数字,不是判断你输入的是不是一个数,这个方法只是判断你输入的是什么字符,并不是判断你输入的是什么类型,因为无论如何,输入的值都为字符串类型,小数中有小数点,当然会返回FALSE了。
如何判断输入是不是小数,首先判断输入有没有小数点,几个小数点,小数点的位置、再按照小数点进行切片,切为两片,判断每一片是否都为纯数字

下面是一个类型转换的方法,将输入的字符串转换为int或float类型的数据:

# 将字符串转为int或float类型
def change_type(str):
   # 先判断输入是不是字符串类型,是的话就继续,不是的话就将输入返回
   if type(str) == type("123"):
       # 判断输入是不是纯数字
       if str.isdigit() :
           # 将输入转为int类型并返回
           result = int(str)
           print(result,"是整数 类型是",type(result))
           return result
       else :
           # 判断字符串中是否只有一个小数点、小数点是不是不在字符串的开始或结尾
           if str.count(".")==1 and not str.startswith(".") and not str.endswith("."):
               # 将字符串按小数点切为两片,整数部分与小数部分
               # 整数部分
               left = str.split('.')[0]
               # 小数部分
               right = str.split('.')[1]
               # 判断切片的部分是不是纯数字
               if left.isdigit() & right.isdigit():
                   # 将输入转为float类型并返回
                   result = float(str)
                   print(result,"是小数 类型是",type(result))
                   return result
   else:
       # 返回字符串
       print("输入的变量不是字符串类型")
       result = str
       return result

来源:https://blog.csdn.net/m0_55034727/article/details/121563466

标签:Python,input(),输入,类型
0
投稿

猜你喜欢

  • Python爬虫Scrapy框架IP代理的配置与调试

    2022-09-19 08:20:26
  • php实现的美国50个州选择列表实例

    2023-11-17 11:06:06
  • python matplotlib工具栏源码探析二之添加、删除内置工具项的案例

    2022-05-16 19:31:22
  • ASP中模拟PHP的关联数组

    2009-12-25 16:31:00
  • python写入并获取剪切板内容的实例

    2023-08-03 10:44:04
  • Win7彻底卸载Oracle 11g图文步骤(靠谱)

    2024-01-22 22:22:05
  • Python字节码与程序执行过程详解

    2022-01-25 04:45:24
  • python中的% 是什么意思,起到什么作用呢

    2021-12-12 00:20:58
  • oracle横向纵向求和代码实例

    2024-01-21 12:14:01
  • 轻设计,让网站灵敏轻便的6个技巧

    2009-12-07 21:26:00
  • python处理图片之PIL模块简单使用方法

    2023-06-25 21:42:05
  • Python3对称加密算法AES、DES3实例详解

    2022-08-16 19:52:56
  • Python实现Youku视频批量下载功能

    2022-08-14 21:16:45
  • Python3 搭建Qt5 环境的方法示例

    2022-08-17 05:12:34
  • Python3+pycuda实现执行简单GPU计算任务

    2022-06-04 09:55:29
  • ajax中get和post的说明及使用与区别

    2024-04-29 13:58:17
  • 教你如何将 Sublime 3 打造成 Python/Django IDE开发利器

    2022-10-10 11:37:29
  • Go语言写入字符串到文件的方法

    2024-05-21 10:21:54
  • python中把嵌套的列表合并成一个列表方法总结

    2022-06-07 04:11:22
  • Hibernate 的原理与配置

    2023-07-20 21:26:52
  • asp之家 网络编程 m.aspxhome.com