首页 > 解决方案 > 如何计算 url 中重复的特殊字符并附加到列表中?

问题描述

我有两个网站的列表,我想数“。” 点和'-'连字符重复的次数,我想将它分配给for循环中每次迭代的空列表。当我在下面执行代码时,它会计算点和连字符,但对于每次迭代,它都会计算前一个值并增加计数,例如 [1,2,3,6,12...] 但我想将每个迭代值单独存储在列表中,例如 [ 1,3,2,5....] 怎么办?

tdots=[]
tphen = []
dots = 0
phen = 0
named_url = ['www.facebook.com','yahoo.com/index-true']

for i in named_url:
    for j in i:
        if '.' in str(j):
            dots = dots + 1
            Dots = []
            Dots.append(dots)
        else:
            print('No more "."')
    tdots.append(sum(Dots))        
for i in named_url:
    for j in i:
        if '-' in str(j):
            phen = phen + 1
            Phen = []
            Phen.append(phen)
        else:
            print('No more "-"')
    tphen.append(sum(Phen))
print(tdots,'Dots')
print(tphen,'Hyphen')

标签: python-3.xfor-loop

解决方案


试试这个:-

dots = []
phens = []
named_url = ['www.facebook.com','yahoo.com/index-true']

for name in named_url:
    dots.append(name.count('.'))

for name in named_url:
    phens.append(name.count('-'))

tdots = sum(dots)
tphens = sum(phens)

print(dots, phens, tdots, tphens)

输出:-

[2, 1]
[0, 1]
3
1

推荐阅读