Python如何判断一个字符串是否包含指定子字符串


Python如何判断一个字符串是否包含指定字符串?本篇文章就给大家介绍Python判断一个字符串是否包含指定子串的3种方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
程序员在字符串上使用的最常见的操作之一是判断字符串是否包含指定子字符串。而Python以非常易于阅读和易于实现的方式就可以实现此功能,有3种方法可以做到这一点。
第一:使用in运算符
最简单的方法是通过python的 in 运算符。
in取两个“参数”,一个在左边,一个在右边,如果左参数包含在右参数中,则返回true。
我们来看看这个例子:
>>> str = "Messi is the best soccer player"
>>> result = "soccer" in str
>>> print result
True
>>> result = "football" in str
>>> print result
False如你所见,当字符串中存在子字符串时,in运算符返回True。
否则,它返回false。
这种方法非常简单,干净,可读和惯用。
第二:使用string模块的find()/rfind()方法
你也可以使用的另一种方法是字符串的find方法。
与被计算为布尔值的in运算符不同,find方法返回一个整数。
如果子字符串存在,则此整数本质上是子字符串开头的索引,否则返回-1。
让我们看看find方法的实际应用。
>>> import string
>>> str = "Messi is the best soccer player"
>>> str.find("soccer")
18
>>> str.rfind("Ronaldo")
-1
>>> str.find("Messi")
0这个方法的一个很厉害的地方:可以指定一个开始索引和一个结束索引来限制你的搜索范围。
例如:
>>> import string
>>> str = "Messi is the best soccer player"
>>> str.find("soccer", 5, 25)
18
>>> str.find("Messi", 5, 25)
-1注意:判断“Messi”时,如果返回-1,因为你将搜索限制在索引5和25之间的字符串了。
第三:使用string模块的index()/rindex()方法
index()/rindex()方法跟find()/rfind()方法相似,只不过在找不到子字符串的时候会报一个ValueError的异常。
import string
def find_string(s,t):
try:
string.index(s,t)
return True
except(ValueError):
return False
s='nihao,shijie'
t='nihao'
result = find_string(s,t)
print result #True总结:

  • 濡備綍鐢python鍒ゆ柇瀛楃涓涓湁鍑犱釜鏁板瓧鍑犱釜瀛楁瘝?
    绛旓細1銆佸彲浠ヨ繖鏍风紪鍐欑▼搴忥細瀹氫箟涓涓惈鏈夋墍鏈夊皬鍐欏瓧姣嶇殑鍒楄〃鍙橀噺w鍙婁竴涓緟娴嬪瓧绗︿覆鍙橀噺s銆傚s瀛楃涓蹭腑鐨勬瘡涓涓瓧绗﹁繘琛屽惊鐜凯浠f娴嬪叾鏄惁浣嶄簬鍙橀噺w涓紝鑻ヤ负鐪燂紝鍒欏璁℃暟鍙橀噺c杩涜鍔犱竴鎿嶄綔銆傝緭鍑篶鍙橀噺锛屽嵆涓烘墍姹傘2銆佸垵瀛﹁呯殑璇濈‘瀹炲彲浠ラ氳繃asciitable鏉ュ垽鏂瓧姣嶅拰鏁板瓧鐨勫尯鍒侾ython閲岄潰鏈変袱涓唴缃嚱鏁皁rd鍜...
  • python鍒ゆ柇瀛楃涓鏄惁涓烘暟瀛
    绛旓細鏂规硶涓锛氫娇鐢ㄥ唴缃嚱鏁癷sdigit Python涓殑`isdigit`鍑芥暟鍙互鍒ゆ柇涓涓瓧绗︿覆鏄惁鍙寘鍚暟瀛楀瓧绗銆傚鏋滃瓧绗︿覆涓寘鍚潪鏁板瓧瀛楃锛岃鍑芥暟灏嗚繑鍥濬alse銆備緥濡傦細python def is_number:if str_val.isdigit:return True else:return False 浣跨敤杩欎釜鍑芥暟鍙互鍒ゆ柇瀛楃涓叉槸鍚﹀畬鍏ㄧ敱鏁板瓧缁勬垚銆備絾瀹冧笉浼氳瘑鍒寘鍚皬鏁扮偣鐨勬诞鐐...
  • python涓垽鏂瓧绗︿覆涓槸鍚﹀寘鍚ぇ灏忓啓瀛楁瘝
    绛旓細鍙互浣跨敤Python鍐呯疆鍑芥暟isalpha鏉ユ鏌ュ瓧绗︿覆涓槸鍚﹀寘鍚瓧姣嶏紝鍖呮嫭澶у皬鍐欏瓧姣銆傞氳繃閬嶅巻瀛楃涓蹭腑鐨勬瘡涓瓧绗︼紝璋冪敤isalpha鍑芥暟妫鏌ヨ瀛楃鏄惁涓哄瓧姣嶏紝濡傛灉鏄瓧姣嶅垯杩斿洖True锛屽惁鍒欒繑鍥濬alse銆傚叿浣撳疄鐜板涓嬶細绛旀锛氫娇鐢≒ython涓殑isalpha鍑芥暟缁撳悎寰幆閬嶅巻瀛楃涓蹭腑鐨勬瘡涓瓧绗︼紝鍙互鍒ゆ柇瀛楃涓蹭腑鏄惁鍖呭惈澶у皬鍐欏瓧姣嶃傝缁嗚В閲...
  • python鍒ゆ柇瀛楃涓涓槸鍚﹀惈鏈夎嫳鏂
    绛旓細绛旀锛氬彲浠ラ氳繃閬嶅巻瀛楃涓蹭腑鐨勬瘡涓瓧绗︼紝鍒ゆ柇鍏舵槸鍚︿负鑻辨枃瀛楁瘝鏉ュ垽鏂瓧绗︿覆涓槸鍚﹀惈鏈夎嫳鏂銆傚垽鏂瓧绗︿覆涓槸鍚﹀惈鏈夎嫳鏂囧瓧绗︼紝鍙互鍒╃敤Python涓殑瀛楃鍒ゆ柇鏂规硶銆傛垜浠彲浠ラ亶鍘嗗瓧绗︿覆涓殑姣忎竴涓瓧绗︼紝浣跨敤Python鍐呯疆鐨刬salpha鏂规硶鍒ゆ柇璇ュ瓧绗︽槸鍚︿负瀛楁瘝銆傚鏋滃瓧绗︿覆涓瓨鍦ㄨ嚦灏戜竴涓瓧姣嶏紝鍒欏垽鏂负鍚湁鑻辨枃瀛楃銆傚叿浣撳疄鐜...
  • 杞欢娴嬭瘯涓,python鍒ゆ柇瀛楃涓,str鍑芥暟isdigit銆乮sdecimal銆乮snumeri...
    绛旓細绗竴绉嶏細灏嗗彉閲忚浆鎹负float鍨嬶紝濡傛灉鑳芥垚鍔熷垯鏄暟瀛楋紝濡傛灉鎶涘嚭閿欒鍒欎笉鏄暟瀛銆備笅闈㈡槸Python鍐呯疆鍏充簬鍒ゆ柇瀛楃涓茬被鍨嬬殑鏂规硶浠嬬粛锛歴tr.isalnum()濡傛灉瀛楃涓蹭腑鐨勬墍鏈夊瓧绗﹂兘鏄瓧姣嶆垨鏁板瓧涓旇嚦灏戞湁涓涓瓧绗︼紝鍒欒繑鍥濼rue锛屽惁鍒欒繑鍥濬alse銆傜敤int()閭d釜涓嶅彨绯荤粺宕╂簝锛屽彨鈥滄湭澶勭悊鐨勬剰澶栤濓紝try/except灏辨槸骞茶繖涓殑銆
  • Python濡備綍鍒ゆ柇涓涓瓧绗︿覆鏄惁鍖呭惈鎸囧畾瀛愬瓧绗︿覆
    绛旓細绋嬪簭鍛樺湪瀛楃涓蹭笂浣跨敤鐨勬渶甯歌鐨勬搷浣滀箣涓鏄鍒ゆ柇瀛楃涓鏄惁鍖呭惈鎸囧畾瀛愬瓧绗︿覆銆傝Python浠ラ潪甯告槗浜庨槄璇诲拰鏄撲簬瀹炵幇鐨勬柟寮忓氨鍙互瀹炵幇姝ゅ姛鑳斤紝鏈3绉嶆柟娉曞彲浠ュ仛鍒拌繖涓鐐广傜涓锛氫娇鐢╥n杩愮畻绗︽渶绠鍗曠殑鏂规硶鏄氳繃python鐨 in 杩愮畻绗︺俰n鍙栦袱涓滃弬鏁扳濓紝涓涓鍦ㄥ乏杈癸紝涓涓湪鍙宠竟锛屽鏋滃乏鍙傛暟鍖呭惈鍦ㄥ彸鍙傛暟涓紝鍒...
  • 濡備綍鐢Python鍒ゆ柇瀛楃涓閲屾槸鍚﹀寘鍚暟瀛?
    绛旓細浣犲彲浠ヤ娇鐢 Python 鐨勫瓧绗︿覆鏂规硶鏉鍒ゆ柇瀛楃涓涓槸鍚﹀寘鍚暟瀛椼備笅闈㈡槸涓绉嶅父瑙佺殑鏂规硶锛歞ef contains_digit(s):for char in s:if char.isdigit():return True return False 娴嬭瘯绀轰緥 string1 = "Hello123"string2 = "HelloWorld"print(contains_digit(string1)) # 杈撳嚭 True print(contains_digit(...
  • python濡備綍鍒ゆ柇鍙橀噺鏄惁鏄瀛楃涓
    绛旓細Python涓鐨勬暟鎹被鍨嬫湁鏁板瓧銆瀛楃涓锛屽垪琛ㄣ佸厓缁勩佸瓧鍏搞侀泦鍚堢瓑銆傜浉鍏虫帹鑽愶細銆奝ython鏁欑▼銆python涓锛鍒ゆ柇鏌愬彉閲忕殑鏁版嵁绫诲瀷鏄惁涓哄瓧绗︿覆锛屽彲鐢╥sinstance()鍑芥暟锛屼篃鍙氳繃姣旇緝 type(x) == type(鈥榓鈥)鐨勫兼潵鍒ゆ柇銆傜涓绉嶆柟娉曪細绗簩绉嶆柟娉曪細
  • 缂栧啓绋嬪簭,鍒ゆ柇涓涓瓧绗︿覆鏄惁鏄洖鏂囥傝嫢鏄洖鏂囧垯杈撳嚭yes,鍚﹀垯杈撳嚭no_鐧...
    绛旓細1銆佹墦寮JUPTER NOTEBOOK锛屾柊寤涓涓狿YTHON鏂囨。銆2銆乶 = input("Please input string: ")锛宲rint(n)锛屾垜浠鍏堣鐢ㄦ埛杈撳叆瑕佽繘琛鍒ゆ柇鐨瀛楃涓锛岀劧鍚庢墦鍗板嚭鏉ユ煡鐪嬩竴涓嬨3銆乶 = input("Please input string: ")is_palidrome = n[::-1]if n == is_palidrome: print("This is a palidrome.")...
  • python 鍒ゆ柇瀛楃涓涓槸鍚﹀惈鏈夎嫳鏂
    绛旓細浣跨敤isalpha()鏂规硶鏉ヨ繘琛鍒ゆ柇銆Python isalpha() 鏂规硶妫娴瀛楃涓鏄惁鍙敱瀛楁瘝缁勬垚銆傚鏋滃瓧绗︿覆鑷冲皯鏈変竴涓瓧绗骞朵笖鎵鏈夊瓧绗﹂兘鏄瓧姣嶅垯杩斿洖 True锛屽惁鍒欒繑鍥 False銆俰salpha()鏂规硶瑕佹娴嬬殑瀛楃銆傚畠鍙互鏄竴涓湁鏁堢殑瀛楃锛堣杞崲涓 int 绫诲瀷锛夛紝涔熷彲浠ユ槸 EOF锛堣〃绀烘棤鏁堢殑瀛楃锛夈
  • 扩展阅读:python符号含义大全 ... python中的符号大全 ... python判断字符是数字 ... python特殊符号表 ... python判断特殊符号 ... python字符串只保留字母 ... python判断中文 ... python合法标识符怎么判断 ... python判断是否为英文字母 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网