前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >6 - 检测一个字符串是否可以转换为数字

6 - 检测一个字符串是否可以转换为数字

原创
作者头像
ruochen
修改2021-05-22 17:16:40
4710
修改2021-05-22 17:16:40
举报
文章被收录于专栏:若尘的技术专栏

1. 如何检测字符串是否为数字(数字和字母的混合形式)

代码语言:txt
复制
s1 = '12345'
print('是数字: ', s1.isdigit())

print(int(s1))
代码语言:txt
复制
是数字:  True
代码语言:txt
复制
12345
代码语言:txt
复制
s2 = '12345a'
print('12345a是数字:', s2.isdigit())
print('12345a是字母数字混合形式:', s2.isalnum()) 
代码语言:txt
复制
12345a是数字: False
代码语言:txt
复制
12345a是字母数字混合形式: True
代码语言:txt
复制
s3 = '12_345a'
print('12_345a是字母数字混合形式:', s3.isalnum())

print(' '.isspace())
# 检测字符串是否为整数
print('12.45'.isdecimal())
# 检测字符串是否为字符
print('abcd3'.isalpha())
代码语言:txt
复制
12_345a是字母数字混合形式: False
代码语言:txt
复制
True
代码语言:txt
复制
False
代码语言:txt
复制
False

2. 怎样将一个字符串转换为数字才安全

代码语言:txt
复制
s1 = '1234'
print(int(s1))

s2 = 'a1234'
# 抛出异常
# print(int(s2))

if s2.isdigit():
    print(int(s2))
else:
    print('s2 不是数字,无法转换')
    
try:
    print(int('222aaa'))
except Exception as e:
    print('222aaa 不是数字,无法转换')
    print(e)
代码语言:txt
复制
1234
代码语言:txt
复制
s2 不是数字,无法转换
代码语言:txt
复制
222aaa 不是数字,无法转换
代码语言:txt
复制
invalid literal for int() with base 10: '222aaa'
  • 检测字符串是否为数字:isdigit
  • 检测字符串是否为数字和字母混合:isalnum

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 如何检测字符串是否为数字(数字和字母的混合形式)
  • 2. 怎样将一个字符串转换为数字才安全
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档