自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

手把手教你查找字符串中包含的多個元素

開發(fā) 后端
本文基于粉絲針對Python字符串的提問,給出了一個利用Python基礎(chǔ)+正則表達(dá)式處理的解決方案,完全滿足了粉絲的要求。

大家好,我是Python進(jìn)階者。

前言

前幾天在才哥交流群里,有個叫【華先生】的粉絲在Python交流群里問了一道關(guān)于Python字符串基礎(chǔ)的問題,初步一看覺得很簡單,實際上也確實不難,題目如下圖所示。

問題:如何查找字符串中包含的多個元素。比如某個字符串中包含“宿舍”或“公寓”或“酒店”任何一個,則返回1。

解決思路

上圖中【是小董呀、】大佬提出使用列表硬上,【Barry】大佬提出用正則,也有【dcpeng】大佬提出用any()、all()函數(shù),當(dāng)然了,還有很多方法可以解決,也歡迎大家留言區(qū)留言或者私信我分享答案。

這里我綜合大家給的答案,整理了三個實現(xiàn)方案,下面一起來看看吧!

解決方法

方法一

這里給出【才哥】提供的代碼,使用了any()函數(shù),恰到好處,下面直接來看代碼吧! 

  1. s = '宿舍 餓了 酒店' 
  2. any([x in s for x in ['宿舍''公寓''酒店']]) 

方法二

這里給出小小明大佬的代碼,直接正則安排。

  1. import re 
  2. text = '宿舍 餓了 酒店' 
  3. re.search('宿舍|公寓|酒店', text) 

方法三

這里給出【海心廣告1】大佬的代碼,本質(zhì)上也是正則,只不過這里完全是根據(jù)題意去行事的,如果確定存在,則返回1。

  1. # coding: utf-8 
  2. import re 
  3.  
  4.  
  5. def find_kw(text): 
  6.     kw = ['宿舍''公寓''酒店'
  7.     for k in kw: 
  8.         f_t = re.search(k, text)  # 如果字符串中含有關(guān)鍵字,則返回True,否則返回None 
  9.         if f_t: 
  10.             return 1 
  11.  
  12.  
  13. if __name__ == '__main__'
  14.     text = '我住在希爾頓酒店' 
  15.     result = find_kw(text) 
  16.     if result: 
  17.         print(result)  # 返回1后,打印返回值1,否則不打印任何值 

當(dāng)時代碼分享之后,【冫馬讠成】大佬還特意問了一句,如果就是要求有返回值1,那怎么辦呢?答案其實已經(jīng)在上面了,當(dāng)然了,結(jié)合方法一和方法二,尤其是方法一,你完全可以將any()函數(shù)替換成你自己自定義的一個返回值為1的函數(shù),只要后面的推導(dǎo)式查得到不為空,就有戲。

總結(jié)

我是Python進(jìn)階者。本文基于粉絲針對Python字符串的提問,給出了一個利用Python基礎(chǔ)+正則表達(dá)式處理的解決方案,完全滿足了粉絲的要求。

 

責(zé)任編輯:姜華 來源: Python爬蟲與數(shù)據(jù)挖掘
相關(guān)推薦

2021-07-14 09:00:00

JavaFX開發(fā)應(yīng)用

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2021-12-11 20:20:19

Python算法線性

2021-09-26 16:08:23

CC++clang_forma

2011-05-06 10:02:42

jqueryjavascript

2011-04-28 09:23:36

REST

2022-01-08 20:04:20

攔截系統(tǒng)調(diào)用

2023-04-26 12:46:43

DockerSpringKubernetes

2022-12-07 08:42:35

2022-07-27 08:16:22

搜索引擎Lucene

2022-03-14 14:47:21

HarmonyOS操作系統(tǒng)鴻蒙

2011-02-22 13:46:27

微軟SQL.NET

2021-12-28 08:38:26

Linux 中斷喚醒系統(tǒng)Linux 系統(tǒng)

2021-02-26 11:54:38

MyBatis 插件接口

2009-06-02 15:38:36

eclipse streclipse開發(fā)steclipse str

2022-11-28 08:23:14

IDEAGradle配置

2022-06-30 08:13:44

PythonWeb編程語言

2017-07-07 11:01:04

Spark性能調(diào)優(yōu)

2020-08-12 07:41:39

SQL 優(yōu)化語句
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號