Concernant le problème du comptage du nombre de types numériques différents dans une liste d'entiers en Python.
大家讲道理
大家讲道理 2017-06-22 11:52:27
0
3
852

Dans le code suivant, kind_num est utilisé pour compter les entiers avec plusieurs valeurs différentes dans la liste d'entiers.

class Solution(object):
    def distributeCandies(self, candies):
        """
        :type candies: List[int]
        :rtype: int
        """
        loc = len(candies)
        mol = loc % 2
        if not (2 <= loc <= 10000) or mol != 0:
            return 'wrong length of array'
        for num in candies:
            if not (-10000 <= num <= 10000):
                return 'wrong element in array'

        kind_num = 0
        sis_num = loc / 2
        for candy in candies:
            kind_num += 1
            while True:
                try:
                    candies.remove(candy)
                    print candies
                except ValueError:
                    break
        if kind_num > sis_num:
            return sis_num
        elif kind_num < sis_num:
            return kind_num
        else:
            return sis_num


s = Solution()

print s.distributeCandies([1,1,2,2,3,3])

Mais la deuxième boucle for s'est terminée tôt avant de compléter les valeurs dans les bonbons. Pourquoi ? ? ?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(3)
曾经蜡笔没有小新

Ne pas supprimer dans la boucle

Si vous voulez simplement compter différents types de valeurs

#统计出现次数
lst = [1,1,2,2,3,3,4,4,5,6]
print len(set(lst))

#统计每种各出现几次
from collections import Counter
print dict(Counter(lst))
Peter_Zhu

candies.remove(candy) est exécuté pour la première fois. Ok, le bonbon est supprimé à cause de while (True), ce bonbon sera supprimé à l'infini dans la même boucle For, mais ce bonbon a été supprimé la première fois. Alors pause.

phpcn_u1582
from collections import defaultdict

d = defaultdict(int)

for item in your_list:
    d[item] += 1
    
print d
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!