python字符数量_python计算子字符串的数量

Apple iPhone 11 (A2223) 128GB 黑色 移动联通电信4G手机 双卡双待

4999元包邮

去购买 >

#coding=utf-8

def countSubStr(str1):

dict1 = {}

list1 = []

s_len = len(str1) + 1

if s_len<2:

return dict;

for i in range(0,s_len):

for j in range(i+2,s_len):

list1.append(str1[i:j])

for s in list1:

# print('%s-%s' % (s,list1.count(s)))

dict1.setdefault(s,list1.count(s)) # 去重

return dict1

res = countSubStr('abcabcd')

print(res)

res = countSubStr('abc')

print(res)

结果:

{'ab': 2, 'abc': 2, 'abca': 1, 'abcab': 1, 'abcabc': 1, 'abcabcd': 1, 'bc': 2, 'bca': 1, 'bcab': 1, 'bcabc': 1, 'bcabcd': 1, 'ca': 1, 'cab': 1, 'cabc': 1, 'cabcd': 1, 'abcd': 1, 'bcd': 1, 'cd': 1}

{'ab': 1, 'abc': 1, 'bc': 1}

另一版:

#coding=utf-8

sString = 'abcabcd'

len = len(sString)

list = []

list1 = []

i = 0

if len <= 1 :

print("")

else:

while (i <= len):

j = i+2

while (j <= len):

list.append(sString[i:j])

if sString[i:j] not in list1:

list1.append(sString[i:j])

j += 1

i += 1

print (list1)

for k in list1:

print(k,list.count(k))

原文链接:http://fanson-g.iteye.com/blog/2429116

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值