用Python写一行代码,不使用第三方库判断输入的化学式是否合理

你可以使用 Python 的 re 模块来判断输入的化学式是否合法。

下面是一个示例代码:

import re

def is_valid_formula(formula):
    # 匹配化学式的正则表达式
    pattern = r'^[A-Z][a-z]?(?:[0-9]+)?(?:[A-Z][a-z]?(?:[0-9]+)?)*$'
    return bool(re.match(pattern, formula))

# 测试
formulas = ['H2O', 'NaCl', 'C6H12O6', 'CH3CH2OH']
for formula in formulas:
    print(f'{formula}: {is_valid_formula(formula)}')

输出结果如下:

H2O: True
NaCl: True
C6H12O6: True
CH3CH2OH: True

这段代码使用了正则表达式来匹配化学式的格式。正则表达式的模式是:

  • 以一个大写字母开头(表示元素)
  • 可能跟着一个小写字母(表示元素的氧化状态)
  • 可能跟着一个数字(表示元素的数量)
  • 可能会有多个这样的组合,中间用小写字母隔开

通过这种方式,可以判断输入的化学式是否符合常规的格式,从而判断是否合法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值