查找字符串次数
def findStr(desStr, subStr):count = 0
length = len(desStr)
if subStr not in desStr:
print('在目标字符串中未找到字符串!')
else:
for each1 in range(length-1):
if desStr == subStr:
if desStr == subStr:
count += 1
print('子字符串在目标字符串中共出现 %d 次' % count)
求问else后面部分的语句意思,还有问啥要用length函数,能否直接查找某2个字符在不在整个字符串中呢 你的代碼解說:
def findStr(desStr, subStr):
count = 0
length = len(desStr) # 定義長度方便等下進行檢查
if subStr not in desStr:
print('在目标字符串中未找到字符串!')
else: # 當發現 subStr 在 desStr 裡面時
for each1 in range(length-1): # 從第一個字符開始遍歷至最後第二個位置(不包括最後一個)
if desStr == subStr: # 當發現兩個字符串的字符相同時
if desStr == subStr: # 發現字符串的第二個字符也相同時
count += 1 # 計算相同次數
print('子字符串在目标字符串中共出现 %d 次' % count)如果你是想判斷某個字符串是否在另一個字符串裡,而且出現次數是多少,但其實你的代碼是錯的,因為我用你的代碼做測試:a = "banana"
b = "nana"
findStr(a, b)子字符串在目标字符串中共出现 2 次正確應該是1次。{:5_91:} 傻眼貓咪 发表于 2021-9-12 14:07
你的代碼解說:
如果你是想判斷某個字符串是否在另一個字符串裡,而且出現次數是多少,但其實你的代碼是錯 ...
longstr = input('请输入目标字符串:')
shortstr = input('请输入子字符串(两个字符):')
findstr(longstr,shortstr)
请问最后这一句是什么意思哇,这个函数在第一行不是已经定义了 longstr = input('请输入目标字符串:') # 輸入字符串
shortstr = input('请输入子字符串(两个字符):') # 輸入字符串
findstr(longstr,shortstr) # 執行函數,參數是以上兩個字符串
範例:def funcionA(x, y):
print(x+y)
a = 13 # 變量 a
b = 5 # 變量 b
funcionA(a, b) # 執行函數,參數是 a 和 b18
wodeai999 发表于 2021-9-12 15:49
longstr = input('请输入目标字符串:')
shortstr = input('请输入子字符串(两个字符):')
findstr(lon ...
針對你的題目,我的代碼是:
def isInside(main, sub): # 函數
size = len(sub) # 定義子字符串長度,方便等下切割測試(採用段落切割檢查)
count = 0
for i in range(len(main)-size): # 從第1個字符到最後第 size 字符做檢查
if sub in main: # 開始切割檢查
count += 1
return count # 返回次數
a = "banana"
b = "nana"
print(isInside(a, b))1
代碼流程:
main = "banana"
sub = "nana"
檢查範圍:range(len(main)-size)也就是 "ban"(因為 "nana" 長度是4 ,就算"banana" 只有後面 3 個一樣也肯定不對,因為必須 4 個字符一樣)
當 i = "b"
檢查sub 是在 main 裡面(意思就是檢查sub 是在 "bana" 裡面)
答案:沒有
當 i = "a"
檢查 sub 是在 main 裡面(意思就是檢查sub 是在 "anan" 裡面)
答案:沒有
當 i = "n"
檢查 sub 是在 main 裡面(意思就是檢查sub 是在 "nana" 裡
答案:有
count + 1
檢查完畢,返回 count 值(共 1 次) 傻眼貓咪 发表于 2021-9-12 16:14
針對你的題目,我的代碼是:
看懂了 谢谢大佬
页:
[1]