你可以使用正则表达式来判断一个字符串是否只包含.和-的数字。以下是一个示例代码:

import re

def is_valid_num(num):
    pattern = r'^[\d.-]+$'
    if re.match(pattern, num):
        return True
    else:
        return False

# 示例用法
print(is_valid_num('12.345-6')) # True
print(is_valid_num('12.345a6')) # False
print(is_valid_num('12.345 6')) # False

在上面的代码中,我们使用了正则表达式^[\d.-]+$来匹配只包含.和-的数字。其中:

  • ^表示匹配字符串的开始位置。
  • [\d.-]表示匹配数字、点(.)和短横线(-)。
  • +表示匹配前面的字符至少一次。
  • $表示匹配字符串的结束位置。

因此,如果一个字符串只包含数字、点和短横线,那么它就符合上述正则表达式的规则,可以被判断为合法数字。


原文地址: https://www.cveoy.top/t/topic/bMm2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录