"""
字串包含 & 集合
"""#方法一:
def containsany(allstr,childstr):
for c in allstr:
if c in childstr: return true
return false
allstr = "老畢很帥嘛"
childstr = "帥"
print(containsany(allstr,childstr)) # true
#方法二:
def containsany2(allstr,childstr):
for item in filter(childstr.__contains__,allstr): #python3裡直接使用filter
return true
return false
print (containsany2(allstr,childstr)) # true
#方法三:
#集合的intersection得到交集
#bool(something),轉成布林型,除了為空返回false,其它只要有值都返回true
def containsany3(allstr,childstr):
return bool(set(childstr).intersection(allstr))
print (containsany3(allstr,childstr)) # true
print (containsany3(allstr,"贊")) # false
#*************************==集合拓展:*************************==
print ("## 集合聯合union: " )
print (set(childstr).union(set(allstr))) #
print ("## 集合差difference: ")
print (set(allstr).difference(set(childstr))) #
print("## 集合交集inetersection: ")
print (set(allstr).intersection(set(childstr))) #
print ("## 返回集合中包含的所有屬於乙個集合且不屬於另外乙個的元素: ")
print (set(allstr).symmetric_difference(set(childstr))) #
#集合的不重複性
test_str = "bixiaoxiaoxiaopengpeng"
#轉換成集合
strset = set(test_str)
print(strset) #
#給集合排序
strlist = list(strset) #先將集合轉成list
#sort() 函式用於對原列表進行排序,如果指定引數,則使用比較函式指定的比較函式
strlist.sort() #sort沒有返回值,但是會對列表的物件進行排序。
print(strlist) # ->['a', 'b', 'e', 'g', 'i', 'n', 'o', 'p', 'x']
執行結果:
bixiaopeng@bixiaopengtekimacbook-pro python_text$ python text_checkcontains.py
true
true
true
false
## 集合聯合union:
## 集合差difference:
## 集合交集inetersection:
## 返回集合中包含的所有屬於乙個集合且不屬於另外乙個的元素:
['a', 'b', 'e', 'g', 'i', 'n', 'o', 'p', 'x']
微博: @wirelessqa 部落格:
Python3 4字串基礎
python文字之一 字串基礎 python version 3.4 單引號 str single quotes blog 雙引號 str double quotes blog print 單引號 str single quotes print 雙引號 str double quotes 用 分行 ...
002字串包含
2014.6.17 題目描述 給定兩個分別由字母組成的字串a和字串b,字串b的長度比字串a短。請問,如何最快地判斷字串b中所有字母是否都在字串a裡?為了簡單起見,我們規定輸入的字串只包含大寫英文本母,請實現函式bool stringcontains string a,string b 比如,如果是下...
19 字串移位包含問題
總時間限制 1000ms 記憶體限制 65536kb 描述對於乙個字串來說,定義一次迴圈移位操作為 將字串的第乙個字元移動到末尾形成新的字串。給定兩個字串s1和s2,要求判定其中乙個字串是否是另一字串通過若干次迴圈移位後的新字串的子串。例如cdaa是由aabcd兩次移位後產生的新串bcdaa的子串,...