簡體   English   中英

為什么代碼體沒有給出相同的結果?

[英]Why is the code body not giving the same result?

下面的代碼顯示了列表中最不經常重復的數字,並且可以正常工作,並給出了答案3 ...

    theList = [1,3,1,2,2]
listCheck, least = len(theList), 0
for theLeast in theList:
    if theList.count(theLeast) <= listCheck :
        listCheck = theList.count(theLeast)
        least = theLeast
print (least)

但是,當我定義列表並將其更改為整數序列時,代碼顯示1是最不常見的?

 def The_uncommon(integers):
    theList = integers
    listCheck, least = len(theList), 0
    for theLeast in theList:
        if theList.count(theLeast) <= listCheck :
            listCheck = theList.count(theLeast)
            least = theLeast
            return (least)
print(The_uncommon([1,3,1,2,2]))

歡迎任何建議

注意縮進 :)

在第一個代碼段中,您要遍歷整個循環,而在第二個定義函數的示例中,您將返回第一個 least事件。

python的經典縮進問題。

   def The_uncommon(integers):
        theList = integers
        listCheck, least = len(theList), 0
        for theLeast in theList:
            if theList.count(theLeast) <= listCheck :
                listCheck = theList.count(theLeast)
                least = theLeast
        return (least)
    print(The_uncommon([1,3,1,2,2]))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM