Skip to main content
 首页 » 编程设计

python之如何格式化长 `if` 语句

2025年05月04日11java哥

我想测试某些字符是否在一行文本中。条件简单,但要测试的字符较多。

目前我使用的是\方便查看,但是感觉笨拙。有什么方法可以让线条更好看?

text = "Tel+971-2526-821     Fax:+971-2526-821" 
 
if "971" in text or \ 
   "(84)" in text or \ 
   "+66" in text or \ 
   "(452)" in text or \ 
   "19 " in text: 
    print "foreign" 

请您参考如下方法:

为什么不从字符串中提取电话号码并进行测试

text = "Tel:+971-2526-821     Fax:+971-2526-821" 
 
tel, fax = text.split() 
tel_prefix, *_ = tel.split(':')[-1].split('-') 
fax_prefix, *_ = fax.split(':')[-1].split('-') 
 
if tel_prefix in ("971", "(84)"): 
    print("Foreigner") 

对于 python 2.x

tel_prefix = tel.split(':')[-1].split('-')[0] 
fax_prefix = fax.split(':')[-1].split('-')[0]